失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > MATLAB读取文件中的所有同类型数据 并记录其峰值

MATLAB读取文件中的所有同类型数据 并记录其峰值

时间:2019-01-04 07:56:03

相关推荐

MATLAB读取文件中的所有同类型数据 并记录其峰值

实现自动读取某一文件夹中的所有同类型数据文件(.txt、.xls、.csv等格式),并依次处理数据文件(如找到数据的峰值),最后将峰值信息写入txt文件中。

%%读取文件中的所有数据,并记录其峰值%%clc;clear all;%获取文件夹下某类型数据的所有文件名Path = 'E:\0927-3\'; % 找到数据存放的文件夹路径File = dir(fullfile(Path,'*.csv')); % 显示文件夹下所有符合后缀名为.txt文件的完整信息FileNames = {File.name}'; % 提取符合后缀名为.txt的所有文件的文件名,转换为n行1列%读取特定格式的所有数据Length_Names = size(FileNames,1); % 获取所提取数据文件的个数peak_matrix = [];%存放峰值数据的矩阵%循环读取.csv文件,找到数据中的最大值,记录到txt文件或excel文件中for k = 1 : Length_Names % 连接路径和文件名得到完整的文件路径K_Trace = strcat(Path, FileNames(k)); % 读取数据eval(['Data',num2str(k),'=','readmatrix(K_Trace{1,1})',';']);% 注意1:eval()函数是括号内的内容按照命令行执行,% 即eval(['a','=''2','+','3',';'])实质为a = 2 + 3;% 注意2:由于K_Trace是元胞数组格式,需要加{1,1}才能得到字符串data = eval(['Data',num2str(k)]);diyilie = data(:,1);%将data文件的第一列,传递给diyilie数组[m,n]=max(diyilie);%读取第一列,返回最大值及位置peak_matrix = [peak_matrix,m];%依次将峰值存放进矩阵中%%%第一种,记录结果,将数据保存到txt文件中%fid = fopen('ss.txt','a'); %结果记录.txt是存储数据的文件,a是数据向后增加的意思%fprintf(fid,'%f\t',m); % %f\t是将数据往同一行的后面存%fprintf(fid,'%f\n',n); % %f\n是将数据往下一行存 %fclose(fid);eval(['clearvars',' ','Data',num2str(k),';']);%清空指定变量end%%第二种,记录结果,将数据保存到excle文件中xlswrite('0927-3.xls',peak_matrix.');

简单记录下学习进度。

如果觉得《MATLAB读取文件中的所有同类型数据 并记录其峰值》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。