0

私はテキストデータを持っています {} 行の総数は 540 万で、3 ~ 4 桁の整数です。MATLAB で int に変換したいと考えています。

使ってみx = str2num(total_data(1:end,:))ましたがだめでした。

4

3 に答える 3

1

整数を返すには、文字列に接頭辞と接尾辞を追加する必要があります...

>> c = '1234567'

c =

1234567

>> class(c)

ans =

char

>> result = str2num(c)

result =

 1234567

>> class(result)

ans =

double

>> result = str2num(['int32(' c ')'])

result =

 1234567

>> class(result)

ans =

int32
于 2012-04-24T22:33:24.100 に答える
0

私はこのようなことをします:

%Test data
N = 1e4;
textdata = cell(N,1);
for ix = 1:N
    textdata{ix} = num2str(ix);
end

%Convert to integers
dataAsInts = zeros(size(textdata),'int32');
for ix = 1:N
   dataAsInts(ix) = int32(sscanf(textdata{ix},'%d'));
end
于 2012-04-25T06:33:15.747 に答える
0
b = cellfun(@(x)str2double(x), total_data);
于 2012-04-24T19:16:55.380 に答える