我有一个Matlab单元阵列,A< 118080 x 1 cell>看起来像这样:
"Point 1"
"Point 2"
"Point 3"
...
"Point 1230"
细胞是1×9和1×12维度的炭细胞。
我需要将这些字段中的数字分开,以得到118080 x 1矩阵,如:
1
2
3
...
1230
非常感谢任何帮助。
最佳
Sam(Matlab新手)
答案 0 :(得分:2)
没有使用cellfun
regexp
的解决方案(此处仅保留数字)
A = {'Point 1'
'Point 222'
'Point 33333'}
B = regexp(A, '\d+', 'match'); %produce a cell array of numbers in string format
如果要将单元格转换为矩阵
B = str2double([B{:}])'; %convert to numbers
答案 1 :(得分:1)
cellfun(@(x)(x(7:end)), A, 'UniformOutput', false)
或者如果你想要它们作为数字那么
cellfun(@(x)(str2num(x(7:end))), A)