Access value in cell arrays
이전 댓글 표시
A{1,1}.str = 1;
A{2,1}.str = 2;
... (so on)
A{10,1}.str = 10;
Can I say:
B = A{:,1}.str;
so that:
B=[1 2 3 4 5 6 7 8 9 10];
Thanks very much
댓글 수: 2
per isakson
2013년 6월 29일
Is A supposed to be a cell arrays of structures?
A field named "str" holding a numerical value isn't that confusing?
TN
2013년 6월 29일
채택된 답변
추가 답변 (2개)
No. You can do this instead
A(1).str = 1;
A(2).str = 2;
...
A(10).str = 10;
B=[A(:).str]
댓글 수: 3
TN
2013년 6월 29일
Matt J
2013년 6월 29일
It would not make sense to hold structures having the same fields inside cells. It just makes them harder to get to (as you've discovered).
per isakson
2013년 6월 29일
편집: per isakson
2013년 6월 29일
I agree.
However, for some reason the cell array may contain structures with only some fields in common.
James Tursa
2013년 6월 29일
Another variation:
x = [A{:,1}];
B = [x.str];
카테고리
도움말 센터 및 File Exchange에서 Cell Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!