MATLAB:如何从csv文件中提取特定列?
我必须从给定的csv文件中提取第1列、第2列和第4列,并将其写入新文件。新文件在新文件的第1、2、3列中包含原始文件的第1、2和第4列,这一点很重要 我知道第一步是提取数组中所需的值:MATLAB:如何从csv文件中提取特定列?,matlab,csv,Matlab,Csv,我必须从给定的csv文件中提取第1列、第2列和第4列,并将其写入新文件。新文件在新文件的第1、2、3列中包含原始文件的第1、2和第4列,这一点很重要 我知道第一步是提取数组中所需的值: CSVOutput = csvread(‘NumericData.csv’, startx, starty, [startx, starty, endx, endy]) 然后我可以使用csvwrite将这是一个新文件 但问题是我不知道endx,endy。我只能手动检查 那么还有更优雅的方式吗 您可以使用
CSVOutput = csvread(‘NumericData.csv’, startx, starty, [startx, starty, endx, endy])
然后我可以使用csvwrite
将这是一个新文件
但问题是我不知道endx,endy
。我只能手动检查
那么还有更优雅的方式吗 您可以使用
t = readtable(file.csv);
正如德维尔所建议的那样。返回的对象是一个结构,其中每个字段都以表的一列命名。与
fieldnames(t);
得到一个包含列名称的单元格数组
您可以按如下方式访问列:
t.('columnName')
您使用的是哪个版本的MATLAB?也许您可以使用而不是
csvread
。另外,csvread
中的最后一个输入是可选的,我只需忽略它并删除导入数据的第一行,以获得与指定startx
,starty
@Dev iL my version r2014a相同的效果