如何导入多个csv文件(Nan,数字,文本)后操作

8次浏览(最近30天)
莎拉阿隆索Vicario
莎拉阿隆索Vicario 2021年4月6日
我想在matlab中导入几个csv文件(每个为一个流站),我有季节性的流动。这是每个csv的结构如下:
我试着用几种方法去做,但都没有成功:
这是我尝试的第一种方法:
%获取所有文件的数组
basepath =“C: \ \ salonsov \用户桌面\ Results_lowflows \季节'
文件= dir (fullfile (basepath,‘* . csv‘));
%预分配数据存储
data =细胞(大小(文件));
%导入每个文件使用它的文件名
k = 1:元素个数(文件)
Data {k} = csvimport(fullfile(basepath, files(k).name));
结束
我走错了 无法识别的函数或变量'csvimport'。
我也尝试使用csvread而不是csvimport,但我有一个错误,因为我的数据有NaN值。
我也尝试过阅读。表,但不能将文件保存在单元格中。
在导入csv文件之后,我想对它们进行循环以执行一些操作。
什么是导入csv文件的最好的方法,并在matlab中操作后?
16条评论

登录评论。

答案(1)

斯蒂芬。
斯蒂芬。 2021年4月8日
“我想重命名单元格,因为我想知道每个单元格中的数据对应于哪个站。如你所见,我可以导入数据,但现在我不确定如何知道每个基站对应的数据。”
一个更简单、更整洁、更有效的解决方案是使用DIR返回的结构:
P =“C: \ \ salonsov \用户桌面\ Results_lowflows \季节'
S = dir (fullfile (P,‘* . csv‘));
k = 1:元素个数(S)
F = fullfile(P, S(k).name);
(k)。data = csvimport (F);%或READTABLE等等。
结束
看一看结构S:它包含所有的文件数据和相应的文件名,正如您所需要的。
例如,第二个文件名及其数据:
(2) . name
(2) . data
访问和处理这个变量要比使用动态命名的变量简单得多。

下载188bet金宝搏


释放

R2019a

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!