How to get Command Window format for existing 'Cell Arrays'

2 次查看(过去 30 天)
I have a Cell-array created and i want to get the command window format for that cell-array.
For example: I have created a 5x2 cell array using command line:
MyCell = {'time' , 'timestamp';'posX', {'DePositionX', 'DePositionXmm'};'posY', {'DePositionY', 'DePositionYmm'};'velocityX', 'DeVelocityX';'velocityY', 'DeVelocityY'};
Similarly I have a MxN cell array already created(not by me) and i want to get the structure of that cell in a command window format as shown in the above code. Can you tell me is there any way or commands to get this.
Thanks.
  2 个评论
Adam
Adam 2016-11-9
What do you mean by "command window format"?
Just type
MyCell
is you want to view it in the command window.
Ganesh Hegade
Ganesh Hegade 2016-11-9
I can create a cell by typing below piece in command window.
{'time' , 'timestamp';'posX', {'DePositionX', 'DePositionXmm'};'posY', {'DePositionY', 'DePositionYmm'};'velocityX', 'DeVelocityX';'velocityY', 'DeVelocityY'};
Now, already i have a cell array and i want it in above format(vice-versa)

请先登录,再进行评论。

采纳的回答

Jan
Jan 2016-11-10
You have a cell array and want to create the code, which produced this array. Right? Then try FEX: uneval .
If the elements of the cell are all strings or numbers, this would work also:
S = size(C);
fprintf('C = {');
for iR = 1:S(1)
for iC = 1:S(2)
data = C{iR, iC};
if ischar(data)
fprintf('''%s''', data);
elseif isnumeric(data)
fprintf('''%g''', data);
else
error('Class not supported.')
end
if iC < S(2)
fprintf(', ');
else
fprintf('...\n');
end
end
end
fprintf('};')
  4 个评论

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2016-11-9
编辑:Image Analyst 2016-11-10
Not sure what you want but perhaps the whos() function or celldisp() would be what you want.

类别

Help CenterFile Exchange 中查找有关 Multidimensional Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by