Matlab:存储大量数据
我的csv文件看起来像这样
'have', 1436271616097.0, 33.0, 'noChange', 1436271538982.0 'four', 1436271616130.0, 466.0, 'noChange', 1436271538982.0 'have', 1436271616596.0, 467.0, 'noChange', 1436271538982.0 'four', 1436271617063.0, 100.0, 'noChange', 1436271538982.0
我试着用[num, txt, raw] = csvread('test.csv')
它显示错误,说太多的输出参数。
我试图将我的CSV文件转换为.xlsx,但随后它将数字更改为此,
have 1.44E+12 33 noChange 1.44E+12 four 1.44E+12 466 noChange 1.44E+12 have 1.44E+12 467 noChange 1.44E+12 four 1.44E+12 100 noChange 1.44E+12 minutes 1.44E+12 666 noChange 1.44E+12
然后我用[num, txt, raw] = xlsread('test.xls')
但问题是,如果我显示eyeT = vpa(eyeT(:,1))
它显示相同的浮点值。 我如何使用textscan呢?
这是一个使用textscan
提供的csv文件的简单示例。 这给你一个单元格arrays的每一列。
% reading the data file = fopen('file.csv'); F = textscan(file,'%s %f %f %s %f','Delimiter',','); format long % to show all the digits of the large number celldisp(F) % display the values of all cells
这是结果:
F{1}{1} = 'have' F{1}{2} = 'four' F{1}{3} = 'have' F{1}{4} = 'four' F{2} = 1.0e+12 * 1.436271616097000 1.436271616130000 1.436271616596000 1.436271617063000 F{3} = 33 466 467 100 F{4}{1} = 'noChange' F{4}{2} = 'noChange' F{4}{3} = 'noChange' F{4}{4} = 'noChange' F{5} = 1.0e+12 * 1.436271538982000 1.436271538982000 1.436271538982000 1.436271538982000