Filter löschen
Filter löschen

Find with an indexed struc

2 Ansichten (letzte 30 Tage)
AwedBy Matlab
AwedBy Matlab am 31 Jul. 2014
Kommentiert: AwedBy Matlab am 1 Aug. 2014
I have a struc M whose size is (88,1)
If for instance I type M(46,1).acc I get ans = 0
I typed find(M(:,1).acc==0) to find the rows where the acc field is zero, but got the error Error using == : Too many input arguments.
Any help? Thanks!!

Akzeptierte Antwort

Image Analyst
Image Analyst am 31 Jul. 2014
Try
find([M(:,1).acc]==0)

Weitere Antworten (1)

Ben11
Ben11 am 31 Jul. 2014
Bearbeitet: Ben11 am 31 Jul. 2014
It might not be the most elegant but I think it would solve your problem
Indices = cellfun(@(x) x == 0,struct2cell(M)) % you get a logical array where 0's have an index of 1
there is probably a more clever way to do it though.
  3 Kommentare
Ben11
Ben11 am 31 Jul. 2014
You're welcome! I prefer Image Analyst's answer though :)
AwedBy Matlab
AwedBy Matlab am 1 Aug. 2014
me too in this case :p

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by