文章目录
Matlab批量读取数据文件
初次使用Matlab解决问题,记录一下。
需求
首先说明一下需求,机器能够将18×18的数据矩阵保存到文件中,要做的是读取这个文件,去除首行的无关数据,最终输出矩阵各元素的方差。使用的工具是Matlab。
path = ('E:\Data\');%数据文件夹路径
namelist = dir([path,'*.wft']);%提取wft文件的文件信息
l =length(namelist);%wft文件的个数
for i = 1:l
fullname{i} = [path,namelist(i).name];%保存路径+文件名=绝对路径
A = importdata(fullname{i});%将文件中的数据赋值到矩阵中
A (1,:) = [];%去除第一行的无用数据
b(i) = std2(A);%计算方差
end
解决思路,第一步是找到数据文件的相对路径,程序中首先读取文件目录,然后在用dir函数找到目录下面,该文件类型的所有文件。将文件个数赋值给l,方便后续循环计算方差。
第二步就是将文件中的数据值导入到矩阵中,主要参考了《matlab批量读取同一目录下的txt文件》首先找到文件的绝对路径,在使用importdata函数将数据导入,如果是xls文件可以使用xlsread函数。类似的还有load函数。
第三步是去除无关函数,这里参考了