24小时热门版块排行榜    

查看: 4066  |  回复: 8

sduckc

金虫 (正式写手)

[求助] Matlab读取多个文件中某一列的最大值然后输出到一个txt中 已有2人参与

比如我有30个数据(其实我有更多的,但逻辑是一样的),名字是Data1.txt, Data2.txt … Data30.txt ….

每个txt有200行5列

请问如何用一个matlab单独的code来依次读取这些文件,找到每个文件的第五列的最大值,然后将最大值所在的这一行输出到一个单独的txt文件中

这样子,当读取完所有的文件并依次存储那一行之后,就会生成一个单独的txt文件

请大侠们帮帮忙

谢谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sduckc

金虫 (正式写手)

谢谢,我先看看。
2楼2014-01-14 08:52:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yueyue_2013

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
xzhdty: 谢谢参与 2014-01-14 09:49:15
matlab  好久不用大致步骤:
A=fopen(‘文件名.格式’)
A中读取第五行最大值
存为a
save a  文件名.TXT-ascii
读取第五行最大值可在matlab界面中选取,程序代码会自动生成找到最大值。
其实用mathmatic更简单。只是好久不玩matlab了。少年加油好好试一试,你会有很多自己的体会的哦

» 本帖已获得的红花(最新10朵)

为了最初的梦想
3楼2014-01-14 09:03:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sduckc

金虫 (正式写手)

送红花一朵
引用回帖:
3楼: Originally posted by yueyue_2013 at 2014-01-14 09:03:01
matlab  好久不用大致步骤:
A=fopen(‘文件名.格式’)
A中读取第五行最大值
存为a
save a  文件名.TXT-ascii
读取第五行最大值可在matlab界面中选取,程序代码会自动生成找到最大值。
其实用mathmatic更 ...

谢谢,虽然看的一知半解。
4楼2014-01-14 09:07:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jsky1988

新虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
sduckc: 金币+30, ★★★很有帮助, 可否帮忙试运行前5个数据?我对matlab很不懂啊 2014-01-15 08:04:52
首先需要构造文件路径:
PathAll=strcat("根目录",“Data”);
PathAll=strcat(PathAll,‘1’+i);%i是循环变量
PathAll=strcat(PathAll,".txt";
data=importdata(Pathall);
这样txt就导入到matlab的data变量中,data是一个200行5列的数据
用max(data(:,5))求第五列的最大值
最后用fopen打开一个文件,然后写入你要写的数据就行啦。。
5楼2014-01-14 14:41:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sduckc

金虫 (正式写手)

引用回帖:
5楼: Originally posted by jsky1988 at 2014-01-14 14:41:18
首先需要构造文件路径:
PathAll=strcat("根目录",“Data”);
PathAll=strcat(PathAll,‘1’+i);%i是循环变量
PathAll=strcat(PathAll,".txt";
data=importdata(Pathall);
这样txt就导 ...

前5个数据。
https://www.dropbox.com/s/ktyj1zzfpude71m/New.rar
6楼2014-01-15 08:05:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jsky1988

新虫 (小有名气)

可怜的娃,直接给你代码吧。。我也是初学的,代码比较乱。。不过你应该能看得懂,多给我点分哈。。呵呵。。
for i=1:5
    PathAll=strcat('Data','0'+i);
    PathAll=strcat(PathAll,'.txt');
    data=importdata(PathAll);
    [maxdata,index]=max(data(:,5));
    outpath=strcat('Data','0'+i);
    outpath=strcat(outpath,'Result.txt');
    outfile=fopen(outpath,'w');
    for j=1:5
        fprintf(outfile,'%f ',data(index,j));
    end
    fclose(outfile);
end

» 本帖已获得的红花(最新10朵)

7楼2014-01-15 16:52:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sduckc

金虫 (正式写手)

送红花一朵
引用回帖:
7楼: Originally posted by jsky1988 at 2014-01-15 16:52:18
可怜的娃,直接给你代码吧。。我也是初学的,代码比较乱。。不过你应该能看得懂,多给我点分哈。。呵呵。。
for i=1:5
    PathAll=strcat('Data','0'+i);
    PathAll=strcat(PathAll,'.txt');
    data=impor ...

非常感谢!但是怎么设置悬赏分呢?我上次回复你的时候已经把所有的金币都给你了,也没看到那里可以再加分的。

这个代码很好,就是最后输出到了不同的txt文件里面了,我正在想办法怎么把他们放在一个txt里面形成新的矩阵
8楼2014-01-15 23:35:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jsky1988

新虫 (小有名气)

引用回帖:
8楼: Originally posted by sduckc at 2014-01-15 23:35:43
非常感谢!但是怎么设置悬赏分呢?我上次回复你的时候已经把所有的金币都给你了,也没看到那里可以再加分的。

这个代码很好,就是最后输出到了不同的txt文件里面了,我正在想办法怎么把他们放在一个txt里面形成 ...

。其实很简单,你注意看我的程序,在每一个变量为i的循环里都创建了一个新的txt文件,你在循环外面就创建一个文件就行啦,然后代码这样写:
outfile=fopen(‘Result’,'w');%输出文件,这样结果全部在一个文件里面啦
for i=1:5%每个文件运行一次,i表示文件序号
    PathAll=strcat('Data','0'+i);
    PathAll=strcat(PathAll,'.txt');
    data=importdata(PathAll);
    [maxdata,index]=max(data(:,5));%求每个文件第五列的最大值所在的行
    for j=1:5%输出循环
        fprintf(outfile,'%f ',data(index,j));
    end
    fprintf(‘\n');%换行,我不知道是不是用\n,你可以自己查一下
end
   fclose(outfile);
希望这个能解决你的问题
9楼2014-01-16 10:25:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sduckc 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 中科大材料专硕319求调剂 +3 孟鑫材料 2026-03-13 3/150 2026-03-14 18:10 by houyaoxu
[考研] 265求调剂 +4 威化饼07 2026-03-12 4/200 2026-03-14 17:23 by userper
[考研] 复试调剂 +4 z1z2z3879 2026-03-14 5/250 2026-03-14 16:30 by JourneyLucky
[考研] 材料与化工(0856)304求B区调剂 +7 邱gl 2026-03-10 11/550 2026-03-14 12:18 by 邱gl
[考研] 211本,11408一志愿中科院277分,曾在中科院自动化所实习 +3 Losir 2026-03-12 3/150 2026-03-14 12:11 by 热情沙漠
[考研] 297求调剂 +4 学海漂泊 2026-03-13 4/200 2026-03-14 11:51 by 热情沙漠
[考研] 一志愿浙江大学0856材料与化工求调剂 +4 yansheng@211 2026-03-09 5/250 2026-03-14 02:10 by JourneyLucky
[考研] 308求调剂 +4 是Lupa啊 2026-03-09 4/200 2026-03-14 02:06 by tranquil_ya
[考研] 306求调剂 +4 唐薏薏 2026-03-09 4/200 2026-03-14 01:19 by JourneyLucky
[考研] 307求调剂 +7 超级伊昂大王 2026-03-10 7/350 2026-03-14 00:49 by JourneyLucky
[考研] 材料与化工(0856)304求B区调剂 +6 邱gl 2026-03-12 7/350 2026-03-13 23:24 by 邱gl
[考研] 一志愿中科院,化学方向,295求调剂 +4 一氧二氮 2026-03-11 4/200 2026-03-13 22:35 by JourneyLucky
[考研] 0703,333分求调剂 一志愿郑州大学-物理化学 +3 李魔女斗篷 2026-03-11 3/150 2026-03-13 22:24 by JourneyLucky
[考研] 290求调剂 +9 ADT 2026-03-11 9/450 2026-03-13 21:55 by JourneyLucky
[考研] 315求调剂 +9 小羊小羊_ 2026-03-11 10/500 2026-03-13 21:13 by SXNU李老师
[考研] 332求调剂 +3 Zz版 2026-03-13 3/150 2026-03-13 20:36 by 18595523086
[考研] 304求调剂(085602一志愿985) +12 化工人999 2026-03-09 12/600 2026-03-13 12:02 by JourneyLucky
[考研] 化工学硕306求调剂 +9 42838695 2026-03-12 9/450 2026-03-13 10:16 by houyaoxu
[考博] 26读博 +4 Rui135246 2026-03-12 10/500 2026-03-13 07:15 by gaobiao
[考研] 一志愿:武汉理工,材料工程,英二数二 总分314 +3 2202020125 2026-03-10 4/200 2026-03-10 13:54 by xiongyaxuan
信息提示
请填处理意见