如何在MATLAB中导入CSV文件

13,932次(过去30天)
嗨,我有一个问题。 我需要从CSV文件导入数据到MATLAB。不幸的是,数据具有3列中的标题信息。
如何跳过标题并直接获取数据?
例如:
A =导入数据(“C: \ s11.dat”) *
那么下一步是什么?我需要你的帮助。
谢谢你。
1条评论
sehrish
sehrish 2013年4月18日
当您单击导入数据时,有一个选项“导入为”..有三个选项可将数据作为矩阵或列或小区数组保存,因此如果您希望将其保存为整个THN选择矩阵和UR整个变量将保存如果您想要明智的变量,则选择列选项和数据将保存在列中,并且变量将显示在工作空间中

登录评论。

接受答案

Mukesh Jadhav.
Mukesh Jadhav. 2016年10月9日
编辑:MathWorks支万博1manbetx持团队 2021年3月15日
将数据从CSV文件导入MATLAB使用“可读取”功能。“可读”功能会自动检测标题和跳过的行数。
t = readtable(“myfile.csv”);
或者,您可以指定用于跳过的行数:
t = readtable(“myfile.csv”'numheaderlines',3);%跳过前三行数据
有关更多信息,请参阅:
1条评论
弗朗西斯科拉德岛
阅读('myfile.csv');这会生成警告 - >'警告:从文件中的列标题被修改为在为表创建变量名称之前,使它们有效的MATLAB标识符。原始列标题保存在VariaBlyEscrips属性中。将“preservevariablenames”设置为true以使用原始列标题作为表变量名称。'
要解决:
T = readtable(‘myfile.csv’,‘PreserveVariableNames’,真正的);

登录评论。

更多答案(4)

Karen Hornsby.
Karen Hornsby. 2013年4月18日
您可以通过右键单击当前文件夹窗口中的文件来使用导入数据向导。当导入向导打开时,它会给你一个数据的预览,在右上角有一个框,询问你有多少标题行。你可以使用它来创建代码来反复打开这种类型的文件(这工作得很好,但如果你是新手,它可能会有点混乱编辑),或者你可以使用下面的代码来打开文件
ftoread =“%文件名”;
fid = fopen (ftoread);
fgetl(FID)%读线,但没有任何东西
fgetl(FID)
fgetl(FID)
m = textscan(FID,' % f ''delimiter''\,');%您需要更改要匹配文件%f的值数,以获取字符串的数字和%s。
fclose (fid)
您可以在帮助文件中获得更多帮助,只需在搜索框中键入您想要帮助的命令。凯伦

托马斯
托马斯 2013年4月18日
编辑:托马斯 2013年4月18日
我认为最简单的方法是从文件交换中使用csvimport:
%读取数据示例:将列作为列向量导入
[x y z] = csvimport(“vectors.csv”'列', {'X, 'y',“Z”});
%删除标题
X (1) = [];
Y (1) = [];
z(1)= [];
这假设数组中的第一个元素包含标题
托马斯

jgd0008
jgd0008 2016年12月2日
编辑:每•艾萨克森 2016年12月2日
嗨,这样的东西,可以工作;
数据= fopen('file_name.csv');
= textscan(数据,'%s''delimiter''\ n');
b = a {1,1};
文件关闭(fid);
c = textscan(b,'%s''delimiter'”、“);
D = C {1};

Sharmila Kanagaraj.
Sharmila Kanagaraj. 2017年1月28日
AnyBoady已知的动态群集如何加载数据集

标签

没有输入标签。

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!