标签:
假设data文件夹和work文件夹并列,我的所有数据存放于data文件夹里面,我的代码存放于code文件夹里面
1、在code文件夹里面写代码获取data文件夹下所有文件
mainpath=mfilename(‘fullpath‘);
index=strfind(mainpath,‘\‘);
mainpath=[mainpath(1:index(end-1)) ‘data\‘]
filename=dir([mainpath ‘*‘]);
2、mkdir、save和load函数的高级运用
% 接上文 filename里面前两个条目是.和..,所以有效的文件是从第三个开始
for i=3:length(filename) % 对循环读取每一个文件夹
i
data=[];
classType=[];
run=[];
runid=1;
featureNum=[];
for j=1:4 % 读取每一个文件夹里面的数据
j
file=dir([mainpath filename(i).name ‘\*_‘ num2str(j) ‘.mat‘]);
dataread=importdata([mainpath filename(i).name ‘\‘ file.name]);
for k=1:40
datause=dataread(:,:,k);
newdata=func1(double(datause)); % 根据相关系数计算特征
data=[data;newdata];
classType=[classType;j];
run=[run;runid];
runid=runid+1;
end
end
str=[‘corr/id_‘ num2str(i-2)];
mkdir(str)
save([str ‘/data‘],‘data‘,‘classType‘,‘run‘);
end
这里使用的mkdir函数和save函数都是带括号的形式,这样的话就可以把变量i的值给设定到路径里面。save函数第一个参数是路径,后面的是需要保存的变量名的字符形式。
load([‘id_‘ num2str(2),‘/data‘],‘data‘,‘classType‘,‘run‘);
load函数与save函数格式一样,不在叙述。
标签:
原文地址:http://blog.csdn.net/zhangzhengyi03539/article/details/43268961