2021年3月11日木曜日

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

0 件のコメント:

コメントを投稿