Ejemplo n.º 1
0
def loadrundata(p, s, r, m=None, c=None):
    # inputs:
    # p: paths list
    # s: string representing subject ('LMVPA001')
    # r: run ID ('Run1')
    from os.path import join as pjoin
    from mvpa2.datasets import eventrelated as er
    from mvpa2.datasets.mri import fmri_dataset
    from mvpa2.datasets.sources import bids as bids

    # bfn = pjoin(p[0], 'data', s, 'func', 'extra', s+'_'+r+'_mc.nii.gz')
    # motion corrected and coregistered
    bfn = pjoin(p[0], 'data', s, 'func', s + '_' + r + '.nii.gz')
    if m is not None:
        m = pjoin(p[0], 'data', s, 'masks', s + '_' + m + '.nii.gz')
        d = fmri_dataset(bfn, chunks=int(r.split('n')[1]), mask=m)
    else:
        d = fmri_dataset(bfn, chunks=int(r.split('n')[1]))
    # This line-- should be different if we're doing GLM, etc.
    efn = pjoin(p[0], 'data', s, 'func', s + '_' + r + '.tsv')
    fe = bids.load_events(efn)
    if c is None:
        tmpe = events2dict(fe)
        c = tmpe.keys()
    if isinstance(c, basestring):
        # must be a list/tuple/array for the logic below
        c = [c]
    for ci in c:
        e = adjustevents(fe, ci)
        d = er.assign_conditionlabels(d, e, noinfolabel='rest', label_attr=ci)
    return d
Ejemplo n.º 2
0
def loadrundata(p, s, r, m=None, c=None):
    # inputs:
    # p: paths list
    # s: string representing subject ('LMVPA001')
    # r: run ID ('Run1')
    from os.path import join as pjoin
    from mvpa2.datasets import eventrelated as er
    from mvpa2.datasets.mri import fmri_dataset
    from mvpa2.datasets.sources import bids as bids


    # bfn = pjoin(p[0], 'data', s, 'func', 'extra', s+'_'+r+'_mc.nii.gz')
    # motion corrected and coregistered
    bfn = pjoin(p[0], 'data', s, 'func', s + '_' + r + '.nii.gz')
    if m is not None:
        m = pjoin(p[0], 'data', s, 'masks', s+'_'+m+'.nii.gz')
        d = fmri_dataset(bfn, chunks=int(r.split('n')[1]), mask=m)
    else:
        d = fmri_dataset(bfn, chunks=int(r.split('n')[1]))
    # This line-- should be different if we're doing GLM, etc.
    efn = pjoin(p[0], 'data', s, 'func', s + '_' + r + '.tsv')
    fe = bids.load_events(efn)
    if c is None:
        tmpe = events2dict(fe)
        c = tmpe.keys()
    if isinstance(c, basestring):
        # must be a list/tuple/array for the logic below
        c = [c]
    for ci in c:
        e = adjustevents(fe, ci)
        d = er.assign_conditionlabels(d, e, noinfolabel='rest', label_attr=ci)
    return d
Ejemplo n.º 3
0
def test_load_events():
    evtsv = "onset\tduration"
    eq_(load_events(StringIO(evtsv)), [])
    ra = load_events(StringIO(evtsv), as_recarr=True)
    eq_(len(ra), 0)
    eq_(ra.dtype.names, ('onset', 'duration'))
    # now with content to do type checks
    evtsv = "onset\tduration\ttrial_type\n2\t1.3\tboring\n3.5\t4\texciting"
    ra = load_events(StringIO(evtsv))
    eq_(ra, [{
        'onset': 2.0,
        'duration': 1.3,
        'trial_type': 'boring'
    }, {
        'onset': 3.5,
        'duration': 4.0,
        'trial_type': 'exciting'
    }])
Ejemplo n.º 4
0
def loadevents(p, s):
    # if isinstance(c, basestring):
    #     # must be a list/tuple/array for the logic below
    #     c = [c]
    fds = {}
    from mvpa2.datasets.sources import bids
    from os.path import join as pjoin
    for sub in s.keys():
        fds[sub] = [bids.load_events(pjoin(p[0], 'data', sub, 'func', sub + '_' + r + '.tsv')) for r in s[sub]]
    return fds
Ejemplo n.º 5
0
def loadevents(p, s):
    # if isinstance(c, basestring):
    #     # must be a list/tuple/array for the logic below
    #     c = [c]
    fds = {}
    from mvpa2.datasets.sources import bids
    from os.path import join as pjoin
    for sub in s.keys():
        fds[sub] = [
            bids.load_events(
                pjoin(p[0], 'data', sub, 'func', sub + '_' + r + '.tsv'))
            for r in s[sub]
        ]
    return fds