次のようなMatlabセル配列、 <118080 x 1 cell> があります。
"Point 1"
"Point 2"
"Point 3"
...
"Point 1230"
セルは、1x9 から 1x12 の寸法の char セルです。
これらのフィールドから数値を分離して、次のような 118080 x 1 の行列を作成する必要があります。
1
2
3
...
1230
どんな助けでも大歓迎です。
一番
サム (Matlab 初心者)
次のようなMatlabセル配列、 <118080 x 1 cell> があります。
"Point 1"
"Point 2"
"Point 3"
...
"Point 1230"
セルは、1x9 から 1x12 の寸法の char セルです。
これらのフィールドから数値を分離して、次のような 118080 x 1 の行列を作成する必要があります。
1
2
3
...
1230
どんな助けでも大歓迎です。
一番
サム (Matlab 初心者)
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
cellfun(@(x)(x(7:end)), A, 'UniformOutput', false)
または、それらを数値として使用する場合は、
cellfun(@(x)(str2num(x(7:end))), A)