Пример #1
0
def get_corrvox_gs(data_ts, head_mask, regions):
    # remove GS
    cf_rm = ConfoundsRm(data_ts[head_mask].mean(0).reshape(-1, 1), data_ts[head_mask].T, intercept=False)
    data_ts[head_mask] = cf_rm.transform(data_ts[head_mask].mean(0).reshape(-1, 1), data_ts[head_mask].T).T
    # extract time series
    ts_regions = ts.get_ts(data_ts, regions)
    ts_allvox = data_ts[head_mask]
    # compute correlations
    return ts.corr(ts_regions, ts_allvox)
Пример #2
0
def get_corrvox_gs(data_ts,head_mask, regions):
    # remove GS
    cf_rm = ConfoundsRm(data_ts[head_mask].mean(0).reshape(-1,1),data_ts[head_mask].T,intercept=False)
    data_ts[head_mask] = cf_rm.transform(data_ts[head_mask].mean(0).reshape(-1,1),data_ts[head_mask].T).T
    # extract time series
    ts_regions = ts.get_ts(data_ts,regions)
    ts_allvox = data_ts[head_mask]
    # compute correlations
    return ts.corr(ts_regions,ts_allvox)
Пример #3
0
def grabConnectivityWindowsStats(root_path, part_, windowsize=20):
    list_files = listdir(root_path)
    means_array = []
    stds_array = []
    subj_list = []
    k = 0
    for i in range(len(list_files)):
        #try:
        if list_files[i].split('.')[-1] == 'mat':
            tmp_mat = scipy.io.loadmat(root_path + list_files[i])
            tmp_subjid = tmp_mat['subj_id'][0]
            tmp_vol = tmp_mat['vol']
        else:
            tmp_vol = nib.load(root_path + list_files[i]).get_data()
            tmp_vol = np.swapaxes(np.swapaxes(tmp_vol, 0, 3), 1, 2)
            tmp_subjid = list_files[i].split('_')[1]

        print(tmp_subjid)

        if tmp_vol.shape[3] > 40:
            subj_list.append(tmp_subjid)
            ts_ = ts.get_ts(tmp_vol, part_.get_data())
            windows_val = clust.getWindows(ts_, windowsize)
            print windows_val.shape
            tmp_data_mean = windows_val.mean(axis=0)
            tmp_data_std = windows_val.std(axis=0)
            if k == 0:
                means_array = tmp_data_mean[np.newaxis, :]
                stds_array = tmp_data_std[np.newaxis, :]
            else:
                means_array = np.vstack(
                    (means_array, tmp_data_mean[np.newaxis, :]))
                stds_array = np.vstack(
                    (stds_array, tmp_data_std[np.newaxis, :]))
            k += 1
        #except:
        #    print('Exception: ' + root_path + list_files[i])
    return pd.DataFrame(means_array,
                        index=subj_list), pd.DataFrame(stds_array,
                                                       index=subj_list)
Пример #4
0
def grabStability(root_path,part_,nclusters=12,windowsize=20):
    list_files = listdir(root_path)
    data_array = []
    subj_list=[]
    k=0
    for i in range(len(list_files)):
        try:
            tmp_mat = scipy.io.loadmat(root_path + list_files[i])
            print tmp_mat.keys()
            if tmp_mat['vol'].shape[3]>windowsize+20:
                subj_list.append(tmp_mat['subj_id'][0])
                ts_ = ts.get_ts(tmp_mat['vol'],part_.get_data())
                tmp_data2 = clust.getWindowCluster(ts_,nclusters,windowsize).mean(axis=0)
             
                if k==0:
                    data_array = tmp_data2[np.newaxis,:]
                else:
                    data_array = np.vstack((data_array,tmp_data2[np.newaxis,:]))
                k+=1
        except:
            print('Exception: ' + root_path + list_files[i])
    return pd.DataFrame(data_array, index=subj_list)
Пример #5
0
def grabStability(root_path, part_, nclusters=12, windowsize=20):
    list_files = listdir(root_path)
    data_array = []
    subj_list = []
    k = 0
    for i in range(len(list_files)):
        try:
            tmp_mat = scipy.io.loadmat(root_path + list_files[i])
            print tmp_mat.keys()
            if tmp_mat['vol'].shape[3] > windowsize + 20:
                subj_list.append(tmp_mat['subj_id'][0])
                ts_ = ts.get_ts(tmp_mat['vol'], part_.get_data())
                tmp_data2 = clust.getWindowCluster(ts_, nclusters, windowsize).mean(axis=0)

                if k == 0:
                    data_array = tmp_data2[np.newaxis, :]
                else:
                    data_array = np.vstack((data_array, tmp_data2[np.newaxis, :]))
                k += 1
        except:
            print('Exception: ' + root_path + list_files[i])
    return pd.DataFrame(data_array, index=subj_list)
Пример #6
0
def grabConnectivityWindowsStats(root_path,part_,windowsize=20):
    list_files = listdir(root_path)
    means_array = []
    stds_array = []
    subj_list=[]
    k=0
    for i in range(len(list_files)):
        #try:
        if list_files[i].split('.')[-1] == 'mat':
            tmp_mat = scipy.io.loadmat(root_path + list_files[i])
            tmp_subjid = tmp_mat['subj_id'][0]
            tmp_vol = tmp_mat['vol']
        else:
            tmp_vol = nib.load(root_path + list_files[i]).get_data()
            tmp_vol = np.swapaxes(np.swapaxes(tmp_vol,0,3),1,2)
            tmp_subjid = list_files[i].split('_')[1]
        
        print(tmp_subjid)
        
        if tmp_vol.shape[3]>40:
            subj_list.append(tmp_subjid)
            ts_ = ts.get_ts(tmp_vol,part_.get_data())
            windows_val = clust.getWindows(ts_,windowsize)
            print windows_val.shape
            tmp_data_mean = windows_val.mean(axis=0)
            tmp_data_std = windows_val.std(axis=0)
            if k==0:
                means_array = tmp_data_mean[np.newaxis,:]
                stds_array = tmp_data_std[np.newaxis,:]
            else:
                means_array = np.vstack((means_array,tmp_data_mean[np.newaxis,:]))
                stds_array = np.vstack((stds_array,tmp_data_std[np.newaxis,:]))
            k+=1
        #except:
        #    print('Exception: ' + root_path + list_files[i])
    return pd.DataFrame(means_array, index=subj_list),pd.DataFrame(stds_array, index=subj_list)
Пример #7
0
def get_corrvox_std(data_ts,head_mask, regions):
    # extract time series std
    ts_regions = ts.get_ts(data_ts,regions,metric='std')
    ts_allvox = data_ts[head_mask]
    # compute correlations
    return ts.corr(ts_regions,ts_allvox)
Пример #8
0
def get_corrvox_std(data_ts, head_mask, regions):
    # extract time series std
    ts_regions = ts.get_ts(data_ts, regions, metric='std')
    ts_allvox = data_ts[head_mask]
    # compute correlations
    return ts.corr(ts_regions, ts_allvox)