필터 지우기
필터 지우기

Joining multiple 1xn cell arrays into mxn cell array

조회 수: 3 (최근 30일)
Bhaskar Edara
Bhaskar Edara 2015년 9월 3일
댓글: Star Strider 2015년 9월 3일
Hello I have a function that returns a containers.Map object with values as 1xn cell arrays. For example
map=containers.Map({'OBJECT', 'COLOR', 'WGT'},{{'obj1','obj2','obj3'},{'red','blue','green'},{1.2,2.54,8.12}});
The values in map are 3 1x3 cells.
>> map.values
ans =
{1x3 cell} {1x3 cell} {1x3 cell}
I would like to join the 3 1x3 cell data into 3x3 cell data like this
>> transpose([{'obj1','obj2','obj3'};{'red','blue','green'};{1.2,2.54,8.12}])
ans =
'obj1' 'red' [1.2000]
'obj2' 'blue' [2.5400]
'obj3' 'green' [8.1200]
How do I do this?
Thanks Bhaskar

채택된 답변

Star Strider
Star Strider 2015년 9월 3일
One possibility:
v = map.values;
vc = [v{1}', v{2}', v{3}']
vc =
'red' 'obj1' [1.2000e+000]
'blue' 'obj2' [2.5400e+000]
'green' 'obj3' [8.1200e+000]
  댓글 수: 4
Bhaskar Edara
Bhaskar Edara 2015년 9월 3일
I was able to do this using your idea.
vc=cell(3,3);
keys=map.keys;
for i=1:3
vc(:,i)=map(keys{i});
end
Thank you
Star Strider
Star Strider 2015년 9월 3일
My pleasure.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by