matlab中怎样批量处理文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中怎样批量处理文件?相关的知识,希望对你有一定的参考价值。

我有三百个文件
每一个文件都是两列
然后我想求每一个文件第二列的最大值
然后再输出对应的三百个文件
应该怎么编写呢
请把语句写出来 谢谢啦
可以编写一个给一个例子吗 谢谢

利用load,read等函数读入文件,利用循环简化代码的书写
以下是我2013年全国数模B题第一问编写的程序,是关于如何循环读入文件的
clc,clear
for k=1:19
if k<=10
s=[\'00\',num2str(k-1)];
else
s=[\'0\',num2str(k-1)];
end
A(:,:,k)=imread(s,\'bmp\');
end
for k=1:19
if A(:,1,k)==255
b(1)=k;
end
end
warning off %#ok<*WNOFF>
for k=1:18
for i=1:19
X=[A(:,72,b(k))\';A(:,1,i)\'];
Y(i)=pdist(X,\'cityblock\');
end
[Min,position]=min(Y);
b(k+1)=position;
end
for k=1:19
c(k)=b(k)-1;
end
B=[];
for i=1:19
B=[B,A(:,:,b(i))];
end
imwrite(B,\'附件1\\1st.bmp\');
imshow(B);
参考技术A 1 图像按编号命名:1.jpg, 2.jpg,....,n.jpg
2 循环读图
I=cell(1,n);
for i=1:n
imageName=strcat(num2str(i),'.jpg');
Ii = imread(imageName);
end
3 处理图像
-----------------------
如果图像很多,那么最好这样,第二步和第三步合并
for i=1:n
imageName=strcat(num2str(i),'.jpg');
I = imread(imageName);
处理当前图像
end
参考技术B

大致写了写,未做测试,你试试看吧:

folder = 'D:\\数据文件夹';
files = dir([folder '\\*.txt']);
for i = 1 : length(files)
    name = files(i).name;
    d = load([folder '\\' name]);
    m = max(d(:,2));
    fprintf('%s: %g\\n', name, m);
end

本回答被提问者采纳

matlab批量处理数据

比如我有一个文件夹psd下有1000个文件,每个文件的数据格式都相同,为<x, y, z>,现在我要依次遍历每个文件,得到<z>的值,然后画图.求大佬指点!

参考技术A #include "stdio.h"
main()
char c;
 int letters=0,space=0,digit=0,others=0;
 printf("please input some characters\n");
 while((c=getchar())!='\n')
 追问

MATLAB的程序可以吗??

以上是关于matlab中怎样批量处理文件?的主要内容,如果未能解决你的问题,请参考以下文章

求一段MATLAB图像批量处理和数据的存储的代码

matlab批量处理数据

使用matlab批量处理图像后在指定文件夹存储

Matlab中如何批量读取文件夹中的文件进行处理?

求一段MATLAB图像批量处理和数据的存储的代码

怎样批量去掉文件名中的空格?