我正在运行一个脚本,它向我发送了我在问题中指定的错误消息。我在网上搜索了一些解决方案,但它对我不起作用......脚本基本上是加载EEG和EMG文件,处理它们并最终保存它们。由于我是matlab的新手,我非常感谢你的帮助。 下面是代码加错误消息:
Volume_name='C:\Users\Rouve\Documents\Promotion\EEG\Data_TRIAL';
EEG_RAW_DIR =[Volume_name '/EEG/'];
EEG_MAT_DIR = [Volume_name '/EEG/'];
EMG_DIR = [Volume_name '/EMG/'];
grd= sprintf(['scale,F7,F1,Fz,F4,F8,legend\n' ...
'C5,C3,C1,Cz,C2,C4,C6\n' ...
'CP5,CP3,CP1,CPz,CP2,CP4,CP6\n' ...
'P5,P3,P1,O1,P2,P4,P6']);
filelist={'DENNIS_EEG_NEWSETUP_LOAD'};
file_emg={'DENNIS_EMG_Load.mat'};
[cnt, mrk_orig]= file_readBV([EEG_RAW_DIR filelist{1} '*']);
mrk=mrkodef_cmc(mrk_orig);
cnt=proc_selectChannels(cnt,'not',{'x_dir','y_dir','z_dir'});
epo=proc_segmentation(cnt,mrk,[-500 5500]);
epo_down=proc_selectEpochs(epo,[1:3:60]);
epo_up=proc_selectEpochs(epo,[2:3:60]);
mnt= mnt_setElectrodePositions(cnt.clab);
mnt= mnt_setGrid(mnt, grd);
emg=load([EMG_DIR file_emg{1}]);
mrk_emg.pos=find(diff(emg.Data{9})>0.8);
cnt_emg.clab={'1','2','3','4','5','6','7','8'};
x=zeros(size(emg.Data{1},1),length(cnt_emg.clab));
for ch=1:length(cnt_emg.clab)
x(:,ch)=emg.Data{ch};
end
cnt_emg.x=x;
x=zeros(round(size(cnt_emg.x,1)/6),length(cnt_emg.clab));
for ch=1:size(x,2)
x(:,ch)=decimate(cnt_emg.x(:,ch),6);
end
cnt_emg.x=x;
mrk_emg.pos=round(mrk_emg.pos/6)';
cnt_emg.fs=500;
mrk_emg.fs=500;
mrk_emg= convert_markers(mrk_emg);
mrk_emg.className{1}='DOWN'; %define the phases
mrk_emg.className{2}='UP';
mrk_emg.className{3}='BREAK';
mrk_emg.y=zeros(3,length(mrk_emg.time));
for i=1:3
mrk_emg.y(i,[i:3:60])=1;
end
emg_epo=proc_segmentation(cnt_emg,mrk_emg,[-500 5500]);
file_saveMatlab([EEG_MAT_DIR filelist{1}], cnt, mrk, mnt, ...
'channelwise',1, ...
'format','int16', ...
'resolution', 'auto');
file_emg_save{1}='DENNIS_PROC'; %save under new name!
file_saveMatlab([EMG_DIR file_emg_save{1}], cnt_emg, mrk_emg,[],...
'channelwise',1, ...
'format','int16', ...
'resolution', NaN);
Reference to non-existent field 'Data'.
答案 0 :(得分:0)
数据结构emg
由load()
:
emg=load([EMG_DIR file_emg{1}]);
根据您要加载的文件格式,此文件中保存的所有变量都将还原为结构emg
的字段。
您获得的错误意味着您加载的数据文件不包含名为data
的变量。我可以想象出几个原因:
data
的变量,也许它在文件中拼写不同。请检查创建数据文件的程序。它应该包含save 'your_filename' 'data'