본문 바로가기
Brain Engineering/EEGLAB

[EEGLAB] 데이터 가져오기

by goatlab 2022. 4. 14.
728x90
반응형
SMALL

데이터 가져오기

 

데이터 가져오기는 종종 EEG 분석을 시작하는 첫 번째이자 가장 중요한 단계이다. 그리고 데이터 형식, 채널 위치 파일, EEG 데이터와 동기화해야 하는 이벤트 데이터 파일이 다양하기 때문에 어려울 수 있다.

 

연속 데이터

 

  1. File → Using EEGLAB functions and plugins에서 메뉴 항목을 사용할 수 있는지 확인한다. 메뉴를 선택하고 파일을 가져온다.
  2. 메뉴 항목 File → Using the File-IO interface, 아직 설치하지 않은 경우 EEGLAB에서 File-IO 플러그인을 설치할 수 있다. 함수가 오류를 반환하지 않으면 파일을 가져온다. File-IO는 다양한 데이터 형식을 가져오는 Fieldtrip 모듈이다. 자세한 내용은 파일 IO 설명서를 참조하면 된다.
  3. 메뉴 항목 File → Using the BIOSIG interface, Biosig 도구 상자 (biosig.sf.net)에는 MATLAB에서 다른 EEG 데이터 형식을 읽는 기능에 대한 링크가 포함되어 있다. EEGLAB은 BIOSIG 플러그인을 아직 설치하지 않은 경우 설치할 수 있다. 함수가 오류를 반환하지 않으면 파일을 가져온다.
  4. 메뉴 항목 File → Manage EEGLAB extensions를 사용하고 플러그인을 검색한다 (오른쪽 상단 모서리에 있는 돋보기 사용). 예를 들어 사용 중인 앰프의 이름을 사용하면 된다. 플러그인이 설치되면 File → Using EEGLAB functions and plugins에서 새로 생성된 하위 메뉴 항목을 호출한다.

 

지원되는 데이터 형식 목록

 

플러그인 페이지에는 모든 가져오기 플러그인이 포함되어 있다 . 주어진 파일 확장자 또는 증폭기 이름을 검색하면 된다. File → MATLAB LSL Viewer 메뉴 항목 을 호출하여 EEGLAB 플러그인 관리자를 통해 동일한 플러그인 목록을 사용할 수 있다 . 플러그인에 문제가 발생하면 플러그인 작성자에게 문의하는 것이 좋다. 플러그인에는 종종 자체 문서가 있다.

 

일부 희귀 EEGLAB 플러그인은 EEGLAB 플러그인 관리자에서 사용할 수 없으며 대신 앰프 제조업체에서 zip 파일로 배포할 수 있다. 데이터 형식에 대한 플러그인이 표시되지 않으면 EEG 증폭기 제조업체에 문의하면 된다.

 

데이터 가져오기 플러그인 및 사용자 지정 가져오기

 

1) BIOSIG의 mexSload 명령줄을 사용하여 데이터 가져오기

 

BIOSIG에는 데이터를 가져오기 위한 별도의 C 기능이 있다. 이러한 함수는 mexSload 함수를 통해 MATLAB에서 인터페이스할 수 있다. 해당 기능에 대한 그래픽 인터페이스가 없다. 그러나 mexSload 함수를 사용하여 MATLAB 명령줄에서 데이터를 가져온 후 다음 섹션의 설명서를 사용하여 MATLAB 배열을 EEGLAB으로 가져올 수 있다.

 

2) MATLAB 배열 가져오기

 

먼저 행이 채널이고 열이 데이터 포인트인 시뮬레이션된 EEG 데이터를 포함하는 2차원 MATLAB 배열 'eegdata'를 구성한다.

 

eegdata = rand(32, 256*100);
% build a matrix of random test data (32 channels, 100 seconds at 256 Hz)

 

이러한 데이터를 가져오려면 메뉴 항목 File → Import data → from ASCII/float file or MATLAB array에서 선택하면 된다. 목록에서 MATLAB 변수 옵션을 클릭하고 이름을 eegdata 로 설정한다. 샘플링 주파수를 256Hz로 설정하고 확인을 누른다. 다른 데이터세트 매개변수는 자동으로 조정된다.

 

 

3) MATLAB 구조가 포함된 파일 가져오기 

 

MATLAB 파일은 다양한 형식을 가질 수 있다. 그것들은 단순히 컨테이너이다 (Excel 파일은 다른 탭에서 다양한 방식으로 구성된 데이터를 포함할 수 있음). EEGLAB은 MATLAB 파일의 내부 형식을 추측할 수 없으므로 이 단계를 직접 수행해야 한다. MATLAB 파일은 MATLAB 명령줄에서 가져오는 것이 가장 좋다.

 

mydata = load(‘-mat’, ‘your_file.mat’)

 

그런 다음 데이터가 "mydata" 구조에서 어디에 있는지 확인한다. 예를 들어 mydata.eeg 에는 원시 EEG 데이터 (샘플별 채널)가 포함된 배열이 포함될 수 있다. 이 데이터를 MATLAB 변수에 넣는다.

 

myeeg = mydata.eeg; % This is an example, the name of the field "eeg" might differ for you

 

그런 다음 File → Import data → from ASCII/float file or MATLAB array 메뉴 항목에서 EEGLAB을 선택하고 첫 번째 편집 상자에 "myeeg"를 입력한다 (이전 섹션에서는 MATLAB 배열 가져오기에 대한 자세한 내용이 있음).

 

4) 데이터 평균 세트 가져오기

 

EEGLAB은 단일 시도 데이터를 처리하고 시각화하기 위해 만들어졌다. 튜토리얼의 이 섹션에도 불구하고 데이터 평균을 처리하고 가져오지 않는 것이 좋다. 대신 이벤트 평균을 추출할 수 있는 단일 시도 데이터를 가져와야 한다. 사건 관련 전위 (ERP) 평균도 처리 및 시각화할 수 있지만 직접 가져오면 안 된다.

 

그러나 오래된 데이터의 경우 데이터 평균만 사용할 수 있다. 3개의 평균 ERP 에포크를 단일 시도 에포크인 것처럼 처리하는 것이 가능하다 (이 경우 일부 EEGLAB 기능은 의미가 없을 수 있음). 평균 에포크를 EEGLAB으로 가져오려면 아래 설명된 대로 단일 배열에 다양한 조건을 쌓는다.

 

먼저 다양한 조건에 대한 데이터 평균을 MATLAB으로 가져와야 한다. 예를 들어, 이러한 평균을 텍스트 형식으로 내보낸 다음 표준 MATLAB 함수를 사용할 수 있다.

 

>> load -ascii filename.txt

 

ASCII 파일을 MATLAB으로 가져오려면 모든 열 이름과 행 이름을 제거해야 한다. 그런 다음 데이터 평균을 연결해야 한다. 예를 들어, 3가지 조건 실험에서 1000Hz의 샘플링 속도로 자극 시작과 관련하여 -100 ~ 600ms를 포함하는 3개의 ERP 평균을 도출할 수 있다 (항상 각 주제를 개별적으로 처리한 다음 결과를 비교한다. 분석이 끝날 때 주제에 걸쳐). 예를 들어 MATLAB에서 » whos 를 입력하면 다음이 반환될 수 있다.

 

Name                       Size               Bytes                 Class
avgcond1                   31x600             14880                 double array
avgcond2                   31x600             14880                 double array
avgcond3                   31x600             14880                 double array

Grand total is 55800 elements using 446400 bytes
>> allcond = [ avgcond1 avgcond2 avgcond3 ];

 

마지막으로 연결된 데이터 평균을 MATLAB 배열로 EEGLAB에 가져와야 한다. 메뉴 항목 File → Importing data → From ascii/float file or MATLAB array 또는 이전 섹션 중 하나에 표시된 MATLAB 배열에서를 선택한다.

 

5) 기타 / 지원되지 않는 데이터 형식

 

EEGLAB 토론 목록 아카이브에는 특정 데이터 형식을 가져오기 위한 사용자의 메시지도 포함되어 있다. Google을 사용하고 eeglablist 키워드를 추가하여 목록 아카이브 (및 나머지 EEGLAB 웹 사이트) 아카이브를 검색할 수 있다.

 

https://eeglab.org/tutorials/04_Import/Importing_Continuous_and_Epoched_Data.html

 

a. Continuous data

EEGLAB Documentation including tutorials and workshops information

eeglab.org

 

728x90
반응형
LIST