24小时热门版块排行榜    

查看: 4339  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 国社科又开始会评了,不知道这次命运如何 +3 雨打竹帘 2026-08-30 4/200 2026-08-30 12:35 by 白大多亮
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 gy1nBQXYQJqL 2026-08-29 8/400 2026-08-30 12:03 by l0VvVHGBGRLv
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 gy1nBQXYQJqL 2026-08-29 8/400 2026-08-30 12:02 by l0VvVHGBGRLv
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 gy1nBQXYQJqL 2026-08-29 5/250 2026-08-30 11:52 by l0VvVHGBGRLv
[考博] 找导师 +5 yuanjiabao 2026-08-29 6/300 2026-08-30 11:52 by zhouyanli11
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +6 ASdOkHsho7FD 2026-08-28 9/450 2026-08-30 11:19 by l0VvVHGBGRLv
[论文投稿] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 ASdOkHsho7FD 2026-08-28 6/300 2026-08-30 11:07 by l0VvVHGBGRLv
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 jCd0dEvKHShX 2026-08-29 5/250 2026-08-30 08:33 by ZPa0EcMwuECS
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 G6APbkg8SA6w 2026-08-29 4/200 2026-08-30 07:28 by ZPa0EcMwuECS
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 gy1nBQXYQJqL 2026-08-29 6/300 2026-08-30 01:58 by ZPa0EcMwuECS
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 gy1nBQXYQJqL 2026-08-29 4/200 2026-08-30 01:45 by ZPa0EcMwuECS
[基金申请] 国社科申报系统有变化 +3 kynobel 2026-08-23 3/150 2026-08-29 21:57 by 余韵清
[基金申请] 系统查不到 +11 董八千 2026-08-26 11/550 2026-08-28 18:06 by Leogzhya
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 怎么看青基中了没有啊 +5 叶九微 2026-08-26 5/250 2026-08-27 10:35 by l_zh2008
[基金申请] 出来了 +9 trojank 2026-08-26 9/450 2026-08-26 14:25 by 宝贝虫子
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +8 scalable 2026-08-24 8/400 2026-08-25 12:52 by jnhyjjm
信息提示
请填处理意见