detect consecutive duplicates in a structure
8 ビュー (過去 30 日間)
古いコメントを表示
Hi all
I am trying to detect consecutive duplicates in a structure like this
A(1).a=1
A(2).a=1
A(3).a=3
A(1).b=true
A(2).b=true
A(3).b=false
A has many .a .b ...
I did a for loop with this test :
ttest=A(ii)==A(ii-1)
But I get the error
Undefined function 'eq' for input arguments of type 'struct'.
So I described every .a .b ... individually
all([A(ii).a == A(ii-1).a,A(ii).b == A(ii-1).b,...])
which is a pain and lakes evolutivity
How would you do that ?
Regards
Julien
0 件のコメント
回答 (2 件)
George Papazafeiropoulos
2014 年 5 月 27 日
A(1).a=1
A(2).a=1
A(3).a=3
A(1).b=true
A(2).b=true
A(3).b=false
for ii=2:3
ttest(ii-1)=A(ii).a==A(ii-1).a
end
for ii=2:3
ttest(ii-1)=A(ii).b==A(ii-1).b
end
0 件のコメント
Andrei Bobrov
2014 年 5 月 27 日
H = squeeze(struct2cell(A));
[~,~,c] = unique(reshape([H{:}],size(H)));
ttest = histc(c,unique(c));
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Structures についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!