24小时热门版块排行榜    

查看: 4337  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 投票:  有多少人是今天查系统知道结果的? +16 爱看书的可乐 2026-08-26 18/900 2026-08-29 23:40 by winsaint
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 jCd0dEvKHShX 2026-08-29 3/150 2026-08-29 23:14 by ZPa0EcMwuECS
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 G6APbkg8SA6w 2026-08-29 4/200 2026-08-29 22:27 by ZPa0EcMwuECS
[基金申请] 国社科申报系统有变化 +3 kynobel 2026-08-23 3/150 2026-08-29 21:57 by 余韵清
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 gy1nBQXYQJqL 2026-08-29 5/250 2026-08-29 21:44 by 4qO8zhfjr2AX
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 gy1nBQXYQJqL 2026-08-29 3/150 2026-08-29 21:32 by 4qO8zhfjr2AX
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 gy1nBQXYQJqL 2026-08-29 5/250 2026-08-29 21:22 by 4qO8zhfjr2AX
[基金申请] 面上意见出来了 +8 黄鸟于飞Chao 2026-08-29 16/800 2026-08-29 20:45 by 黄鸟于飞Chao
[论文投稿] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 gy1nBQXYQJqL 2026-08-29 3/150 2026-08-29 18:26 by 4FFAWE8HcgUD
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +6 ASdOkHsho7FD 2026-08-28 7/350 2026-08-29 17:31 by 4FFAWE8HcgUD
[基金申请] 为什么到现在没收到通知? +4 tannykie 2026-08-29 4/200 2026-08-29 17:14 by lmz0216
[教师之家] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 ASdOkHsho7FD 2026-08-28 7/350 2026-08-29 09:26 by G6APbkg8SA6w
[基金申请] 基金未中,这种答复是模板吗? +5 zhaosm1982 2026-08-27 6/300 2026-08-27 16:00 by lfy8008
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +25 木水思豆 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[基金申请] 出来了 +9 trojank 2026-08-26 9/450 2026-08-26 14:25 by 宝贝虫子
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 牛来!米来!面来! +8 beefly 2026-08-26 8/400 2026-08-26 08:37 by xuzhipiao
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
信息提示
请填处理意见