2021年3月12日金曜日

MATLAbでwhereをやる(条件で配列を抽出)

こんな感じでできます。

dsFemale = hospital(hospital.Sex=='Female' & hospital.Age > 40,:);



https://jp.mathworks.com/help/stats/dataset-array-rows.html

2021年3月11日木曜日

MATLABでfor each

 pythonだとA=[1,3,2,4]みたいな配列でループ回したいときは、

for num in A:

    print(num)

ってやったら"1 3 2 4"ってプリントされるみたいな書き方ができるとおもう。

でも、MATLABではないので、

for num=1:length(A)

    disp(A(num))

end

みたいにやるしかないですかねぇ。

MATLAB 構造体から配列への変換

 構造体の1つのfieldがすべて同じデータ型のとき、array(matrix)に変換するやり方。


nums(1).f = 1;
nums(2).f = 2;
nums(3).f = 3;

allNums = [nums.f]

とやればよいらしい。
https://jp.mathworks.com/help/matlab/matlab_prog/access-multiple-elements-of-a-nonscalar-struct-array.html

そうじゃない場合のやり方とか、functionのかけ方とかも上のリンクにあり。

MATLAB cell配列ならなんでもぶちこめる

 structの配列もつくれる。あと文字列の配列もcell配列。

とにかくループ回したいものは配列に入れたほうが圧倒的に楽なので、

cell配列にすると良い。

呼び出すとき{i} となるのが特徴。

MATLAB 構造体の条件付きの取り出しかた

 MATLABで構造体(struct)の中で条件づけて取り出したいとき。

structでwhereをやりたいときは、indexを経由する。


struct が Sとして、以下サイトから引っ張ってきたもの。

>> S(1).a = 1;
>> S(2).a = 2;
>> S(3).a = 3;
>> idx = [S.a]>2
idx =
0 0 1
>> S(idx).a
ans = 3

という感じで取り出せる。

S_sub = S(idx)

とすると、その条件に当てはまるところだけ取り出せる。


[参考]

https://jp.mathworks.com/matlabcentral/answers/422504-find-indices-in-structure-array-for-structures-with-field-meeting-a-condition

2015年7月2日木曜日

イラストレーターでDNAをかく。

簡単に二重螺旋のDNAをかく方法。

イラストレーターCS6 (mac)を基準にしています。
バージョンによってメニューなどが異なる場合があるかもしれません。

1. まず直線をひく

2. 効果->パスの変形->ジグザグで、ポイントを「滑らかに」に。山の数は適当で良いです。
3. オブジェクト->パス->パスのアウトラインを選択。





4. はさみツール(消しゴムツール長押しででてきます)で、下の切れているポイントを二回くらい押すと、切れる。

5. 右側を消して、左の部分をコピー&垂直リフレクト。





6. 2つを重ねて(わかりやすいように色を変えてます。)、さらにそれをコピー。
7. 右側の黒を赤に、赤を黒にすると、
8. 上の2つをくっつけて、同じ色同士グループ化し、少しずらす。

9. 2つの線の間を結ぶように縦線を配置

10. 上のものを単位として、コピペで繰り返す

それっぽいものができてますよね??あとはこれを基本として、いろいろやってみてください!!
参考にさせていただいたページ【DNA】「DNA二重らせんの簡単な描き方」イラスト/Aミ [pixiv] イラストレーターでジグザグのアウトラインを取る。 | 株式会社アジケ 

2015年4月3日金曜日

Gmailの通知を切って幸せになろう

大学のメールをgmailに転送している人は
多いと思います。

でも大学のメールって、
メーリスとか余計なのいっぱい来るじゃないですか。

スマホがピロンってなって、
メーリスだったりするとがっかりしますよね。
(重要なメールもときにはありますが。)

そこで、gmailで必要なメールだけ通知するようにしましょう!


0. iPhoneのメールアプリをやめる
Gmailのアプリじゃないとだめです。

1. フィルターをつくる
通知がきてほしくないもののフィルターをつくります。
フィルタの使用 - Gmail ヘルプ
続行とかいてあるところを押すと、



というのがでてくるので、ここを「フォーラム」にします。

2. 「フォーラム」は最初は有効になっていないので、有効にする

受信トレイのタブとカテゴリ ラベル - Gmail ヘルプ

3. アプリ側で、通知の設定をする
Gmailのアプリ側で設定します。
右スワイプでメニューが出ます。
そこの右上に歯車マークがあります。
そこから通知の設定ができるので、「フォーラム」を外すとOKです。

いままでの手順がだいたいのっていますが、
下のページを参考にしてください。

【新機能】Gmailのタブ機能の設定とiPhone版Gmailの使い方 | 楽しくiPhoneライフ!SBAPP

これで重要なメール以外は通知がきません!
フィルターは何個も作れるので、活用してください♪