Vertically concatenate fields in a structure

How can I concatenate every field to get a 1 x 1 structure with the same number of fields in a new structure. I've tried this: myVars is a cell array with field names.
for i=1:length(x)
for j=1:length(myVars)
s.(myVars{1,j})=[x(1).(myVars{1,j});x(2).(myVars{1,j});x(3).(myVars{1,j})]; % read/concatenate
end
end
but after run I got this Error using horzcat Dimensions of matrices being concatenated are not consistent.
Which could be a right way to solve this? Thanks

답변 (1개)

Luis Lopez
Luis Lopez 2016년 4월 14일

1 개 추천

Solved.
for i=1:length(myVars)
s.(myVars{1,i}) = vertcat(x.(myVars{1,i})); % read/concatenate
end

카테고리

도움말 센터File Exchange에서 Structures에 대해 자세히 알아보기

질문:

2016년 4월 14일

답변:

2016년 4월 14일

Community Treasure Hunt

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

Start Hunting!

Translated by