有没有什么聪明的方法可以将矩阵元素作为字符串数组存储?
例如:
如果A=[1 2 3; 4 5 6]
是2x3矩阵,str(1)='1 2 3'
和str(2)='4 5 6'
;一个1x2阵列
答案 0 :(得分:4)
将矩阵转换为字符串的单元格数组有一种方法(无论是否聪明):
>> str = cellstr(num2str(A));
str =
'1 2 3'
'4 5 6'
输入矩阵A
通过num2str
转换为2x7字符数组(每个数字之间有两个空格),然后我们通过cellstr
将其转换为字符串的单元格数组。第一个字符串由str{1}
访问,第二个字符串由str{2}
访问。
答案 1 :(得分:0)
不幸的是,我认为没有办法让它在句法上完全按照你的要求进行锻炼。我看到两个选择:
正如Geoff所说,str = cellstr(num2str(A))
将完成工作,您必须将其编入索引为str{1}
(请注意str(1)
会返回一个单元格数组,而不是串)。
如果您想要一个数组,可以使用str = num2str(A)
例如
>> num2str(A)
ans =
1 2 3
4 5 6
>> str(1,:)
ans =
1 2 3
>> str(2,:)
ans =
4 5 6
保留为向量,您必须使用str(1,:)
访问您的字符串。