将.txt数据读取到Matlab
我正在尝试从该.txt读取数据:将.txt数据读取到Matlab,matlab,import,text-files,Matlab,Import,Text Files,我正在尝试从该.txt读取数据: obiekt.DEF Timeplot Column01: P abs h01 L1 [W] Column02: P abs h01 L2 [W] Column03: P abs h01 L3 [W] Column04: P abs h01 Sum [W] Time Column01 Column02 Column03 Column04 11.03.2004 09:17:02
obiekt.DEF
Timeplot
Column01: P abs h01 L1 [W]
Column02: P abs h01 L2 [W]
Column03: P abs h01 L3 [W]
Column04: P abs h01 Sum [W]
Time Column01 Column02 Column03 Column04
11.03.2004 09:17:02 23500 19812 21529 64,84e+3
11.03.2004 09:17:05 23316 19789 21519 64,62e+3
11.03.2004 09:17:08 23207 19759 21392 64,36e+3
我只需要列中的数据:01,02,03。有些数据使用“,”而不是“.”。如何改变它?我有很多这样的文件。我尝试了这个函数,但它将所有数据写入一个变量
b=textread('test.txt','%s','delimiter',' ','whitespace',' ');
您可以使用文本扫描:
filename='myfile.txt';
fid=fopen(filename,'r');
data=textscan(fid,'%*s%*s%s%s%s%*s','HeaderLines',10,'CollectOutput',1);
fclose(fid);
data=strrep(data{1},',','.');
data=cellfun(@str2num, data);
设置
标题行
设置要忽略的前10行。设置CollectOutput
将相同类型的项分组到一个单元格数组中(因此我们得到3列字符串)。formatspec“%*s%*s%s%s%s%*s”
忽略日期、时间和Column04,并将Column01-03转换为字符串。然后,strep
将逗号替换为句点cellfun
调用每个单元格上的str2num
,并将字符串转换为数字。工作正常,但当我打开另一个文件时,我发现此时无法访问您的链接(互联网限制),你能用错误的详细信息和产生错误的文件更新你的问题吗?我刚刚检查了你的图片并更新了我的答案,这应该是正确的想法,但我要到早上才能测试它。如果不正确,我会更新它。今天早上测试后,我已经更新了答案。希望现在就可以了。