eeglab批处理代码处理全过程

该篇文章详细介绍了如何使用EEGLAB2023版对脑电数据进行批处理,包括从.cdt文件转换为.set文件,降采样,滤波,去除无用电极,以及ICA分析和伪迹处理的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 eeg数据批处理记录 - 知乎

手把手系列教程||使用EEGLAB2023版对脑电数据进行预处理 - 知乎

clc;clear;
%% Specify Basic information of different groups     将cdt文件转换成set文件,降采样为500,去除无用电极,保存。
group_dir = 'D:\demo';     % 此处路径需要设置为自己的文件目录
group_files = dir([group_dir, filesep, '*.cdt']);  %filesep是\的意思
for i=1:length(group_files)
    subj_fn = group_files(i).name;
    EEG = loadcurry(strcat(group_dir, filesep, subj_fn), 'CurryLocations', 'False');    %导入原始数据
    EEG = pop_resample( EEG, 500);   %降采样
    EEG = pop_eegfiltnew(EEG, 'locutoff',1,'hicutoff',80);   %带通滤波
    EEG = pop_eegfiltnew(EEG, 'locutoff',48,'hicutoff',52,'revfilt',1);    %陷波滤波
    EEG = pop_select( EEG, 'rmchannel',{'M1','M2','HEO','VEO','TRIGGER'});  %去除无关电极  
    EEG = pop_saveset( EEG, 'filename',strcat(group_files(i).name(1:end-4), '.set'), 'filepath',strcat(group_dir, filesep, '_step1'));   %注意需要在运行代码之前,文件目录下建一个_resam_remch的文件夹,以下雷同
end

 

%%   运行 ICA
group1_dir = 'D:\demo';     % 此处路径需要设置为自己的文件目录
group1_dir1 = 'D:\demo\_preica';     % 此处路径需要设置为自己的文件目录
group1_files = dir([group1_dir1, filesep, '*.set']);  %filesep是\的意思
for i=1:length(group1_files)
    subj_fn = group1_files(i).name;
    EEG = pop_loadset('filename',strcat(subj_fn(1:end-4), '.set'), 'filepath', strcat(group1_dir, filesep, '_preica')); %导入数据
    EEG = pop_runica(EEG, 'icatype', 'runica', 'extended',1,'interrupt','on');   % 跑ICA
    EEG = pop_saveset( EEG, 'filename',strcat(group1_files(i).name(1:end-4), '.set'), 'filepath',strcat(group1_dir, filesep, '_ica'));  %保存数据
    
end
%% 使用ICLabel自动去除ICA成分
group1_dir = 'D:\demo';     % 此处路径需要设置为自己的文件目录
group1_dir2 = 'D:\demo\_ica'; 
group1_files = dir([group1_dir2, filesep, '*.set']);  %filesep是\的意思
for i=1:length(group1_files)
    subj_fn = group1_files(i).name;
    EEG = pop_loadset('filename',strcat(subj_fn(1:end-4), '.set'), 'filepath', group1_dir2);
    EEG = pop_iclabel(EEG, 'default');
    EEG = pop_icflag(EEG, [NaN NaN;0.9 1;0.9 1;NaN NaN;NaN NaN;NaN NaN;NaN NaN]); % 标记伪迹成分。这里可以自定义设定阈值,依次为Brain, Muscle, Eye, Heart, Line Noise, Channel Noise, Other.
    EEG = pop_subcomp( EEG, [], 0)   %去除上述伪迹成分
    EEG = pop_reref( EEG, []);    %全脑平均重参考
    EEG = eeg_checkset( EEG );
    EEG = pop_saveset( EEG, 'filename',strcat(group1_files(i).name(1:end-4), '.set'), 'filepath',strcat(group1_dir, filesep, '_rm_ica')); 
end
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值