将单元格转换为由逗号MATLAB分隔的元素列表

时间:2013-12-30 15:48:19

标签: matlab

var是1x6 cell

var = 

'a'  'b'  'v'  'g'  'd'  'r'

我想将其转换为获取带有空格化逗号的列表 'A', 'B', 'V', 'G', 'd', 'R'

任何想法?

谢谢

4 个答案:

答案 0 :(得分:1)

使用cell2mat

>> c={'a', 'b', 'v', 'g', 'd', 'r'}

c = 

    'a'    'b'    'v'    'g'    'd'    'r'

>> s=cell2mat(c)

s =

abvgdr

答案 1 :(得分:1)

这两行将会这样做:

c = {'a', 'b', 'v', 'g', 'd', 'r'};
d = [c',[repmat({','},numel(c)-1,1);{[]}]]';
e = [d{:}]

返回:

e = a,b,v,g,d,r

答案 2 :(得分:0)

笨拙的单行:

cell2mat(strcat(var, [mat2cell(repmat(',',1,length(var)-1), 1, ones(1,length(var)-1)),{''}]))

答案 3 :(得分:0)

更好,从Matlab 2013a开始:

>> c = {'a', 'b', 'v', 'g', 'd', 'r'};
>> strjoin( c, ', ')

ans =

'a, b, v, g, d, r'