数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 4729|回复: 0

[共享]数据处理的小程序

[复制链接]
发表于 2007-9-14 12:51:26 | 显示全部楼层 |阅读模式
在实验中,处理记录数据文件是经常要做的,而用Matlab来处理是我最推崇的,方便快捷,数据文件格式任意设置,均可处理,如用下面格式保存的数据文本data.txt,用Matlab来处理,用黄文宇博士这个小程序做来非常容易,而且处理后得到的图形可直接Copy到各种需要的文件中。 data.txt文件: ...... d+00005.00;v+00001.92;e+00003.08;u-0016;m+1004;t+0286; d+00005.00;v+00002.06;e+00002.94;u-0041;m+0988;t+0287; d+00005.00;v+00002.19;e+00002.81;u-0040;m+0947;t+0288; d+00005.00;v+00002.31;e+00002.69;u-0033;m+0907;t+0289; d+00005.00;v+00002.39;e+00002.61;u-0024;m+0874;t+0290; d+00005.00;v+00002.47;e+00002.53;u-0024;m+0850;t+0291; d+00005.00;v+00002.56;e+00002.44;u-0025;m+0826;t+0292; d+00005.00;v+00002.61;e+00002.39;u-0016;m+0801;t+0293; d+00005.00;v+00002.69;e+00002.31;u-0024;m+0785;t+0294; d+00005.00;v+00002.72;e+00002.28;u-0007;m+0761;t+0295; .....  处理函数readprocess function readprocess(file)
fid=fopen(file,'rt');
if(fid==-1) display('File not exist!');
return;
end
array=[];
while(~feof(fid)) str=fscanf(fid,'%s',1);
if(length(str)>10) %d+00005.00;
v+00002.72;e+00002.28;u-0007;m+0761;t+0295;
col=sscanf(str,'d%f;v%f;e%f;u%f;m%d;t%d;');
array=[array col];
end
end
fclose(fid);
dhead=array(1,;
head=array(2,;
此方法能直接处理含有字符型的数据文件,故调用格式较matlab中用cell和struct简单
调用格式样 readprocess data.txt
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-4-25 16:47 , Processed in 0.047438 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表