求组:MATLAB数据批量读取问题。
比如有很多个数据文件:asdf1.txt、asdf2.txt、asdf1-2.txt、asdf3.txt……每个数据文件的格式如下
序号数据1数据2附加数据
1 21 3 44
2 33 6 87
……
如何将这些数据文件一次批量读取,以方便对其进行均值方差等运算? 搜索论坛. 没找到相关的讨论呢,能帮忙给个链接? %读取当前工作文件夹所有文件
ww=struct2cell(dir);
%选择(单个文件进行处理)
t=ww(1,3);
%打开并读取
IFid=fopen(char(t),'rb');
speech = fread(IFid, 'int16');
执行文件
.............................
%关闭
fclose('all');
关于matlab对数据文件批量读取的问题。
%读取当前工作文件夹所有文件
ww=struct2cell(dir);
%选择(单个文件进行处理)
t=ww(1,3);
%打开并读取
IFid=fopen(char(t),'rb');
speech = fread(IFid, 'int16');
执行文件
.............................
%关闭
fclose('all');
回去试了试,不行,是不是因为我的数据第一行为汉字的原因?
后来我用下面的程序可以读:
ww=struct2cell('E:\data\20070502');
t=ww(1,3)
fid=fopen(char(t),'rb');
temp=fgetl(fid);
data1=fscanf(fid,'%g',); %我的数据文件是12列
不过程序必须放在数据文件目录下,否则会出错,fid返回-1。
后来看了一下原来是因为char(t)仅仅返回了文件名称,没有路径。
问:fread如何用?第一断程序为什么我运行不下去?
[ 本帖最后由 eight 于 2007-5-19 23:28 编辑 ] 还有一个问题:
struct2cell读取文件列表,文件是按照名称排列的,可不可以让文件明按照时间顺序形成数组呢?
回复 #6 dykiamy 的帖子
为什么我执行上面的程序得到错误Function 'struct2cell' is not defined for values of class 'char'. 原帖由 gwei 于 2007-5-20 14:36 发表 http://www.chinavib.com/forum/images/common/back.gif为什么我执行上面的程序得到错误Function 'struct2cell' is not defined for values of class 'char'.
help struct2cell
页:
[1]