Example #1
0
def task_fetch_data():
    """Step 00: Download the openfmri ds117 dataset files."""
    for subject in subjects:
        t1_fname = fname.t1(subject=subject)
        sss_fnames = [fname.sss(subject=subject, run=run) for run in range(1, 7)]
        flash5_fname = fname.flash5(subject=subject)

        yield dict(
            name=subject,
            file_dep=['00_fetch_data.py'],
            targets=[t1_fname, flash5_fname] + sss_fnames,
            actions=['python 00_fetch_data.py %s' % subject],
        )
Example #2
0
def task_filter():
    """Step 02: Bandpass-filter the data"""
    for subject in subjects:
        sss_fnames = [fname.sss(subject=subject, run=run) for run in range(1, 7)]
        filt_fnames = [fname.filt(subject=subject, run=run,
                                  fmin=bandpass_fmin, fmax=bandpass_fmax)
                       for run in range(1, 7)]

        yield dict(
            name=subject,
            task_dep=['anatomy'],
            file_dep=sss_fnames + ['02_filter.py'],
            targets=filt_fnames,
            actions=['python 02_filter.py %s' % subject],
        )
Example #3
0
mne.set_log_level('INFO')

# Handle command line arguments
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('subject', metavar='sub###', help='The subject to process')
args = parser.parse_args()
subject = args.subject
print('Processing subject:', subject)

# Keep track of PSD plots before and after filtering
figs_before = []
figs_after = []

for run in range(1, 7):
    # Load the SSS transformed data.
    raw = mne.io.read_raw_fif(fname.sss(subject=subject, run=run),
                              preload=True)

    # The EOG and ECG channels have been erroneously flagged as EEG channels.
    raw.set_channel_types({'EEG061': 'eog',
                           'EEG062': 'eog',
                           'EEG063': 'ecg',
                           'EEG064': 'misc'})  # EEG064 free-floating el.
    raw.rename_channels({'EEG061': 'EOG061',
                         'EEG062': 'EOG062',
                         'EEG063': 'ECG063'})

    # Drop EEG channels (they are very noisy in this dataset)
    raw.pick_types(meg=True, eeg=False, eog=True, ecg=True, stim=True)

    # Bandpass the data.