MATLAB 板


LINE

我的档案大概有30万行,贴前面几行 "TOA5","CR800Series","CR800","3780","CR800.Std.05","CPU:1011109.CR8","59367","Table1" "TIMESTAMP","RECORD","WS_ms_S_WVT","WindDir_D1_WVT","WS_ms_new_S_WVT","WindDir_new_D1_WVT" "TS","RN","","Deg","","Deg" "","","WVc","WVc","WVc","WVc" "2012-11-09 11:52:30",0,5.28,342,4.541,12.87 "2012-11-09 11:52:36",1,4.475,343.4,4.394,17.41 "2012-11-09 11:52:42",2,3.482,345.5,3.283,20.87 "2012-11-09 11:52:48",3,3.016,355.2,3.43,4.637 "2012-11-09 11:52:54",4,3.746,347.9,3.348,43.72 "2012-11-09 11:53:00",5,5.461,347.2,5.668,14.22 ... 我想要写个程式将去四行档头後~把资料读入并分门别类 我目前的写法是: ============================================================================== filename = '1011203.dat'; %%档名 fid=fopen(filename); fgetl(fid);fgetl(fid);fgetl(fid);fgetl(fid); %跳过四行档头 i=0; tline = fgetl(fid); while ischar(tline) i=i+1; %%%计数器 tline = fgetl(fid); end data=zeros(i,12); %设定档案大小 fid=fopen(filename); fgetl(fid);fgetl(fid);fgetl(fid);fgetl(fid); %跳过四行档头 i=0; tline = fgetl(fid); while ischar(tline) tlength=length(tline); whereComma=strfind(tline,','); %找逗号 data(i,1)=str2double(tline(2:5)); data(i,2)=str2double(tline(7:8)); data(i,3)=str2double(tline(10:11)); data(i,4)=str2double(tline(13:14)); data(i,5)=str2double(tline(16:17)); data(i,6)=str2double(tline(19:20)); data(i,7)=str2double(tline(whereComma(1)+1:whereComma(2)-1)); data(i,8)=str2double(tline(whereComma(2)+1:whereComma(3)-1)); data(i,9)=str2double(tline(whereComma(3)+1:whereComma(4)-1)); data(i,10)=str2double(tline(whereComma(4)+1:whereComma(5)-1)); data(i,11)=str2double(tline(whereComma(5)+1:tlength)); data(i,11)=str2double(tline(whereComma(5)+1:whereComma(6)-1)); data(i,12)=str2double(tline(whereComma(6)+1:tlength)); tline = fgetl(fid); end ============================================================================== 可是读档速度有点慢,问题可能在於读法太蠢... 不知道版上的高手们能不能点拨一下 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.177.112.62
1F:→ mp19990920:若您只是要删除前4行後的档案,可用任何的编辑软体完成 12/23 23:38
2F:→ mp19990920:若您要把删除前4行的资料弄进matlab的话,可以用 12/23 23:39
3F:→ mp19990920:File->"Import Data..."->选择你的档案, 之後用matlab 12/23 23:41
4F:→ mp19990920:的指令把前4行删掉 12/23 23:41
5F:→ greg2977:问题是我会需要一次读入好多笔来做比对与运算 12/23 23:53
6F:→ greg2977:况且这个动作一段时间就要执行一次 12/23 23:54
7F:→ greg2977:感谢一楼的推文~让我知道有如此神速的方法 12/23 23:56
8F:→ greg2977:程式的美妙之处就在於多久可以找出答案 12/24 01:35
9F:→ greg2977:我觉得我找出来了= =+ 12/24 01:35
10F:→ mp19990920:不客气....我看成你出来了 = =||| 12/24 02:35
11F:→ greg2977:textread(filename,'%s %*d %f %f %f %f %f %f', 12/24 15:19
12F:→ greg2977:'headerlines',4,'delimiter',','); 12/24 15:20







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP