我正在尝试打开一个对话框,提示用户选择一个文件,然后在为elabLAB编写的matlab工具箱中编写的函数中使用该文件。代码如下:
[F,PathName,FilterIndex] = uigetfile({'*.*','All Files(*.*)'}, 'Select your File ')
b = strcat(PathName,F)
Input = importdata(b)
FF = Input.filename;
%Loading the dataset into EEG lab. and rereferencing to Cz.
EEG = pop_loadset('filename','FF','filepath','/Users/maheensiddiqui/Desktop/eeglab13_4_4b/EEG_data/Data/infant control01 and lance01 ref Fz - TF Analysis - all electrodes/');
EEG = eeg_checkset( EEG );
我遇到的问题是这一行:
EEG = pop_loadset('filename','FF','filepath','/Users/maheensiddiqui/Desktop/eeglab13_4_4b/EEG_data/Data/infant control01 and lance01 ref Fz - TF Analysis - all electrodes/');
这是我收到的错误消息:
使用加载时出错 无法读取文件'/ Users / maheensiddiqui / Desktop / eeglab13_4_4b / EEG_data / Data / infant control01和lance01 ref Fz - TF 分析 - 所有电极/ FF':没有这样的文件或目录。 pop_loadset出错(第108行) TMPVAR = load(' - mat',filename); 新重新引用时出错(第7行) EEG = pop_loadset('filename','FF','filepath','/ Users / maheensiddiqui / Desktop / eeglab13_4_4b / EEG_data / Data / infant control01 和lance01 ref Fz - TF分析 - 所有电极/');
现在,如果我不在开头做弹出对话框窗口(意味着我删除了前4行代码,并且在以下行中我有:
EEG = pop_loadset('filename','206301L01.set','filepath','/Users/maheensiddiqui/Desktop/eeglab13_4_4b/EEG_data/Data/infant control01
和lance01 ref Fz - TF分析 - 所有电极/');
即。我明确说明了文件的名称,其余的代码工作正常。我不确定为什么会发生这种情况......我需要为大约20个不同的文件运行我的代码,如果每次都需要输入名称才能使其工作效率非常低! (特别是如果我将与其他人分享我的代码)。
有谁知道为什么我会收到此错误?可能是因为文件格式? .set而不是像.mat或.txt等传统格式。但是.set格式在明确放入文件名时有效。我也改变了我的目录以排除空格,但这也不起作用......
我将不胜感激任何帮助!
答案 0 :(得分:2)
感谢Hoki的评论,我能够解决问题。当它是一个变量时,我正在输入文件名作为字符串。
EEG = pop_loadset(' filename',FF,' filepath',...)使用没有' FF'用它作为变量来解决这个问题。
谢谢Hoki。