0

我有一个像这种格式的 csv 文件:

2.3 , 1.3 , 1.2 , 6.8 , classone
1.2 , 2.6 , 1.8 , 0.7 , classtwo

我想将文件读入单独的矩阵;一个矩阵中的前 4 个数值和另一个矩阵中的字符串值

我尝试过 textscan 功能,但效果不佳

M= textread('training.dat','%f %f %f %f %s');

Error using dataread
Number of outputs must match the number of unskipped
input fields.
4

1 回答 1

0

尝试 

[num, str, ~] = xlsread('training.dat');

fid = fopen('training.dat');
D = textscan(                                ...
        fid,                   '%f%f%f%f%s', ...
        'Delimiter',           ' , ',        ...
        'MultipleDelimsAsOne', true          ...
);
fclose(fid);

numeric_stuff = horzcat(D{1:4});
string_stuff  = D{5};
于 2013-04-14T19:52:37.903 回答