TNTLFreiburg / braindecode

Outdated, see new https://github.com/braindecode/braindecode
BSD 3-Clause "New" or "Revised" License
322 stars 155 forks source link

Error reading some data #30

Closed syedumaramin closed 5 years ago

syedumaramin commented 6 years ago

Hi!, I am still trying different things with HybridNet, when I tried to test model with subject 88,89 and some other, it gave errors while reading, actually I want to try with all subjects, with all four classes, to calculate the overall accuracy on full dataset. What changes, should I do, its now giving this error:

physionet_paths_test = [mne.datasets.eegbci.load_data(sub_id,[4,8,12,]) for sub_id in range(86,89)]

`Extracting EDF parameters from /home/umar/mne_data/MNE-eegbci-data/physiobank/database/eegmmidb/S088/S088R12.edf... EDF file detected EDF annotations detected (consider using raw.find_edf_events() to extract them) Setting channel info structure... Creating raw.info structure... Reading 0 ... 15871 = 0.000 ... 123.992 secs... EDF+ with overlapping events are not fully supported EDF+ with overlapping events are not fully supported

:7: RuntimeWarning: EDF+ with overlapping events are not fully supported for path in physionet_paths_test] :7: RuntimeWarning: EDF+ with overlapping events are not fully supported for path in physionet_paths_test] :7: RuntimeWarning: EDF+ with overlapping events are not fully supported for path in physionet_paths_test] :7: RuntimeWarning: EDF+ with overlapping events are not fully supported for path in physionet_paths_test] :7: RuntimeWarning: EDF+ with overlapping events are not fully supported for path in physionet_paths_test] :7: RuntimeWarning: EDF+ with overlapping events are not fully supported for path in physionet_paths_test] --------------------------------------------------------------------------- ValueError Traceback (most recent call last) in () 6 parts_test = [mne.io.read_raw_edf(path, preload=True,stim_channel='auto') 7 for path in physionet_paths_test] ----> 8 raw_test = concatenate_raws(parts_test) 9 10 picks_test = mne.pick_types(raw_test.info, meg=False, eeg=True, stim=False, eog=False, ~/anaconda2/envs/pytorch3/lib/python3.6/site-packages/mne/io/base.py in concatenate_raws(raws, preload, events_list, verbose) ~/anaconda2/envs/pytorch3/lib/python3.6/site-packages/mne/utils.py in verbose(function, *args, **kwargs) 727 with use_log_level(verbose_level): 728 return function(*args, **kwargs) --> 729 return function(*args, **kwargs) 730 731 ~/anaconda2/envs/pytorch3/lib/python3.6/site-packages/mne/io/base.py in concatenate_raws(raws, preload, events_list, verbose) 2499 first, last = zip(*[(r.first_samp, r.last_samp) for r in raws]) 2500 events = concatenate_events(events_list, first, last) -> 2501 raws[0].append(raws[1:], preload) 2502 2503 if events_list is None: ~/anaconda2/envs/pytorch3/lib/python3.6/site-packages/mne/io/base.py in append(self, raws, preload) 1971 all_raws = [self] 1972 all_raws += raws -> 1973 _check_raw_compatibility(all_raws) 1974 1975 # deal with preloading data first (while files are separate) ~/anaconda2/envs/pytorch3/lib/python3.6/site-packages/mne/io/base.py in _check_raw_compatibility(raw) 2446 raise ValueError('raw[%d][\'info\'][\'bads\'] must match' % ri) 2447 if not raw[ri].info['sfreq'] == raw[0].info['sfreq']: -> 2448 raise ValueError('raw[%d][\'info\'][\'sfreq\'] must match' % ri) 2449 if not set(raw[ri].info['ch_names']) == set(raw[0].info['ch_names']): 2450 raise ValueError('raw[%d][\'info\'][\'ch_names\'] must match' % ri) ValueError: raw[6]['info']['sfreq'] must match model.evaluate(test_set.X, test_set.y) {'loss': 1.1624359140187384,`
robintibor commented 5 years ago

Seems like they are not all same sampling frequency and you have to resample them first maybe?