我正在尝试在 matlab 中读取 CSV 文件。我只想阅读第二列,但下面的代码会打印出 CSV 文件中的所有内容。我必须引入哪些参数或函数才能使其仅读取第二列
FILENAME = 'C:\Users\Desktop\Results.csv';
fid = fopen(FILENAME, 'rt');
a = textscan(fid, '%s', 'HeaderLines',1,'Delimiter',',');
fclose(fid);
celldisp(a)
有几种方法:
使用cvsread
:
假设您N
在文件1中有行:
a = csvread( FILENAME, 0, 1, [0 1 N-1 1 ] );
你也可以考虑xlsread
a = xlsread( FILENAME, 'B:B' );
请参阅文档上的具体示例。xlsread
另一种选择是dlmread
a = dlmread( FILENAME, ',', [0 1 N-1 1] );
1 - Rody Oldenhuis在这个答案中可以找到一种在 Matlab 中计算文件中行数的好方法(且快速)。