我有一个混合数据类型的单元格数组:ID
,这是一个字符串,其余的是数字。我使用cell2mat()
但它没有用。我还尝试将ID
从单元格中分离然后转换,但收到的错误是它只有一个维度。
数据的样本是:
ID A B C K L
'A_P66027' 6.49 6.48 6.4 6.404 6.2508
'B_P77178' 5.92 6.47 6.68 6.404 6.661
'K_P212522' 8.49 8.54 9.36 8.901 9.35
'C_P934473' 5.81 5.91 5.79 5.792 5.823
'L_P9671' 11.52 11.63 12.28 11.956 11.481
如何将此单元格数组转换为矩阵?
A
是我的手机,所以我试过了:
B=cell2mat(A); % it does not work.
Id=A(:,1);
C=cell2mat(Id); % also does not work ?
答案 0 :(得分:1)
弃掉第一栏:
foo = {'A_P66027' 6.49 6.48 6.4 6.404 6.2508; ...
'B_P77178' 5.92 6.47 6.68 6.404 6.661; ...
'K_P212522' 8.49 8.54 9.36 8.901 9.35; ...
'C_P934473' 5.81 5.91 5.79 5.792 5.823; ...
'L_P9671' 11.52 11.63 12.28 11.956 11.481 };
cell2mat( foo(:, 2:end) );
编辑:如果包含标题(也丢弃第一行):
foo2 = {
'ID', 'A', 'B', 'C', 'K', 'L'; ...
'A_P66027' 6.49 6.48 6.4 6.404 6.2508; ...
'B_P77178' 5.92 6.47 6.68 6.404 6.661; ...
'K_P212522' 8.49 8.54 9.36 8.901 9.35; ...
'C_P934473' 5.81 5.91 5.79 5.792 5.823; ...
'L_P9671' 11.52 11.63 12.28 11.956 11.481 };
cell2mat( foo2(2:end, 2:end) );