Beispiel #1
0
def basc_run(subjects_list, basc_config):
    import utils
    import os
    import numpy as np
    import scipy.stats
    from os.path import expanduser
    from basc_workflow_runner import run_basc_workflow

    subject_file_list = subjects_list

    tempsubs = [
        '/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets_nipype/sample_data/sub01/rest.nii.gz',
        '/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets_nipype/sample_data/sub02/rest.nii.gz'
    ]

    subject_file_list = tempsubs

    #basc_config = Path(__file__).parent/"basc_config.yaml"

    basc_config = '/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets_NHW1/basc_config.yaml'
    f = open(basc_config)
    basc_dict_yaml = yaml.load(f)
    basc_dict = basc_dict_yaml['instance']

    proc_mem = basc_dict['proc_mem']
    roi_mask_file = basc_dict['roi_mask_file']
    dataset_bootstraps = basc_dict['dataset_bootstraps']
    timeseries_bootstraps = basc_dict['timeseries_bootstraps']
    n_clusters = basc_dict['n_clusters']
    output_size = basc_dict['output_size']
    bootstrap_list = eval(basc_dict['bootstrap_list'])
    cross_cluster = basc_dict['cross_cluster']
    affinity_threshold = basc_dict['affinity_threshold']
    out_dir = basc_dict['out_dir']
    run = basc_dict['run']

    basc_test = run_basc_workflow(subject_file_list,
                                  roi_mask_file,
                                  dataset_bootstraps,
                                  timeseries_bootstraps,
                                  n_clusters,
                                  output_size,
                                  bootstrap_list,
                                  proc_mem,
                                  cross_cluster=cross_cluster,
                                  roi2_mask_file=None,
                                  affinity_threshold=affinity_threshold,
                                  out_dir=out_dir,
                                  run=run)
Beispiel #2
0
def basc_run(subjects_list, basc_config):
    import utils
    import os
    import numpy as np
    import scipy.stats
    from os.path import expanduser
    import yaml
    from basc_workflow_runner import run_basc_workflow

    subject_file_list = subjects_list

    #basc_config = Path(__file__).parent/"basc_config.yaml"

    basc_config = '/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets/basc_config.yaml'
    f = open(basc_config)
    basc_dict_yaml = yaml.load(f)
    basc_dict = basc_dict_yaml['instance']

    proc_mem = basc_dict['proc_mem']
    roi_mask_file = basc_dict['roi_mask_file']
    dataset_bootstraps = basc_dict['dataset_bootstraps']
    timeseries_bootstraps = basc_dict['timeseries_bootstraps']
    n_clusters = basc_dict['n_clusters']
    output_size = basc_dict['output_size']
    bootstrap_list = eval(basc_dict['bootstrap_list'])
    cross_cluster = basc_dict['cross_cluster']
    affinity_threshold = basc_dict['affinity_threshold']
    out_dir = basc_dict['out_dir']
    run = basc_dict['run']

    basc_test = run_basc_workflow(subject_file_list,
                                  roi_mask_file,
                                  dataset_bootstraps,
                                  timeseries_bootstraps,
                                  n_clusters,
                                  output_size,
                                  bootstrap_list,
                                  proc_mem,
                                  cross_cluster=cross_cluster,
                                  roi2_mask_file=None,
                                  affinity_threshold=affinity_threshold,
                                  out_dir=out_dir,
                                  run=run)


#basc_run('/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets_NHW1/Sublist.txt', '/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets/pynets/basc_config.yaml')
#runfile('/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets/pynets/pynets_run.py',args="-i '/Users/aki.nikolaidis/git_repo/ALL_PYNETS/PyNets_NHW1/Sublist.txt' -basc 'True' -dt '0.3' -ns '4' -model 'sps' -mt", wdir='/Users/aki.nikolaidis/git_repo/ALL_PYNETS')
Beispiel #3
0
def heavy_test_basc_workflow_runner():
    #%%
    from basc_workflow_runner import run_basc_workflow
    import utils
    subject_file_list = [
        '/Users/aki.nikolaidis/Desktop/NKI_SampleData/A00060280/3mm_bandpassed_demeaned_filtered_antswarp.nii.gz',
        '/Users/aki.nikolaidis/Desktop/NKI_SampleData/A00060384/3mm_bandpassed_demeaned_filtered_antswarp.nii.gz'
    ]  #,
    #                           '/Users/aki.nikolaidis/Desktop/NKI_SampleData/A00060429/3mm_bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                           '/Users/aki.nikolaidis/Desktop/NKI_SampleData/A00060503/3mm_bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                           '/Users/aki.nikolaidis/Desktop/NKI_SampleData/A00060603/3mm_bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                           '/Users/aki.nikolaidis/Desktop/NKI_SampleData/A00060864/3mm_bandpassed_demeaned_filtered_antswarp.nii.gz']

    proc_mem = [3, 6]  #first is number of proc , second total number of mem

    roi_mask_file = home + '/git_repo/PyBASC/masks/Yeo7_3mmMasks/BilateralStriatumThalamus_3mm.nii.gz'
    dataset_bootstraps = 2
    timeseries_bootstraps = 100
    n_clusters = 8
    output_size = 500
    bootstrap_list = list(range(0, dataset_bootstraps))
    cross_cluster = True
    blocklength = 2
    similarity_metric = 'correlation'
    roi2_mask_file = home + '/git_repo/PyBASC/masks/Yeo7_3mmMasks/YeoTest2.nii.gz'
    affinity_threshold = [0.0] * len(subject_file_list)
    out_dir = home + '/PyBASC_outputs/NewWOrkerTest'
    run = True

    basc_test = run_basc_workflow(subject_file_list,
                                  roi_mask_file,
                                  dataset_bootstraps,
                                  timeseries_bootstraps,
                                  n_clusters,
                                  output_size,
                                  bootstrap_list,
                                  proc_mem,
                                  similarity_metric,
                                  cross_cluster=cross_cluster,
                                  roi2_mask_file=roi2_mask_file,
                                  blocklength=blocklength,
                                  affinity_threshold=affinity_threshold,
                                  out_dir=out_dir,
                                  run=run)
Beispiel #4
0
def test_basc_workflow_runner():

    from basc_workflow_runner import run_basc_workflow
    #import utils
    subject_file_list = [
        home + '/git_repo/PyBASC/sample_data/sub1/Func_Quarter_Res.nii.gz',
        home + '/git_repo/PyBASC/sample_data/sub2/Func_Quarter_Res.nii.gz',
        home + '/git_repo/PyBASC/sample_data/sub3/Func_Quarter_Res.nii.gz',
        home + '/git_repo/PyBASC/sample_data/sub1/Func_Quarter_Res.nii.gz',
        home + '/git_repo/PyBASC/sample_data/sub2/Func_Quarter_Res.nii.gz',
        home + '/git_repo/PyBASC/sample_data/sub1/Func_Quarter_Res.nii.gz',
        home + '/git_repo/PyBASC/sample_data/sub2/Func_Quarter_Res.nii.gz'
    ]

    roi_mask_file = home + '/git_repo/PyBASC/masks/LC_Quarter_Res.nii.gz'
    dataset_bootstraps = 20
    timeseries_bootstraps = 20
    n_clusters = 4
    output_size = 10
    blocklength = 1
    bootstrap_list = list(range(0, dataset_bootstraps))
    cross_cluster = True
    similarity_metric = 'correlation'
    roi2_mask_file = home + '/git_repo/PyBASC/masks/RC_Quarter_Res.nii.gz'
    affinity_threshold = [0.0] * len(subject_file_list)
    out_dir = home + '/PyBASC_outputs/Testing_spatialconstraint'
    run = True

    basc_test = run_basc_workflow(subject_file_list,
                                  roi_mask_file,
                                  dataset_bootstraps,
                                  timeseries_bootstraps,
                                  n_clusters,
                                  output_size,
                                  bootstrap_list,
                                  proc_mem,
                                  similarity_metric,
                                  cross_cluster=cross_cluster,
                                  roi2_mask_file=roi2_mask_file,
                                  blocklength=blocklength,
                                  affinity_threshold=affinity_threshold,
                                  out_dir=out_dir,
                                  run=run)
Beispiel #5
0
                        out_dir = '/home/ec2-user/PyBASC_outputs/BootstrapList_test' + str(
                            dataset_bootstraps
                        ) + 'GS' + '/dim_' + str(output_size) + '_' + str(
                            similarity_metric
                        ) + '_' + str(n_clusters) + '_clusters_' + str(
                            timeseries_bootstraps) + '_IndBS_' + str(
                                blocklength) + '_block' + similarity_metric

                        PyBASC_test = run_basc_workflow(
                            subject_file_list,
                            roi_mask_file,
                            dataset_bootstraps,
                            timeseries_bootstraps,
                            n_clusters,
                            output_size,
                            bootstrap_list,
                            proc_mem,
                            similarity_metric,
                            cross_cluster=cross_cluster,
                            roi2_mask_file=roi2_mask_file,
                            blocklength=blocklength,
                            affinity_threshold=affinity_threshold,
                            out_dir=out_dir,
                            run=run)
                        #                        del PyBASC_test
                        #                        gc.collect()
                        #import pdb; pdb.set_trace()
                        ism_gsm_stability.append(
                            np.load(
                                out_dir +
                                '/workflow_output/ism_gsm_corr_file/ism_gsm_corr.npy'
                            ))
Beispiel #6
0
def NED_heavy_basc_workflow_test():
    #%%

    from basc_workflow_runner import run_basc_workflow
    import utils
    import time
    matrixtime = time.time()

    #    subject_file_list= ['/data/rockland_sample/A00060603/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00060503/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00060429/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00060384/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00060280/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00059935/functional_mni/_scan_dsc_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00059875/functional_mni/_scan_dsc_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00059734/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz',
    #                         '/data/rockland_sample/A00059733/functional_mni/_scan_clg_2_rest_645/bandpassed_demeaned_filtered_antswarp.nii.gz']

    subject_file_list = [
        '/data/Projects/anikolai/rockland_downsampled/A00018030/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00027159/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00027167/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00027439/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00027443/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00030980/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00030981/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00031216/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00031219/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00031410/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00031411/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00031578/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00031881/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00032008/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00032817/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00033231/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00033714/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00034073/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00034074/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00034350/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035291/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035292/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035364/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035377/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035869/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035940/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035941/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00035945/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00037125/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00037368/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00037458/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00037459/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00037483/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00038603/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00038706/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00039075/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00039159/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00039866/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00040342/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00040440/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00040556/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00040798/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00040800/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00040815/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00041503/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00043240/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00043282/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00043494/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00043740/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00043758/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00043788/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00044084/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00044171/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00050743/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00050847/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00051063/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00051603/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00051690/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00051691/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00051758/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052069/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052165/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052183/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052237/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052461/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052613/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00052614/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00053203/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00053320/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00053390/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00053490/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00053744/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00053873/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00054206/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00055693/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00056703/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00057405/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00057480/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00057725/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00057862/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00057863/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00057967/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058004/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058053/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058060/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058061/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058215/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058229/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058516/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058537/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058570/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058685/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00058951/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059109/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059325/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059427/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059733/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059734/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059865/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059875/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00059935/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00060280/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00060384/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00060429/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00060503/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00060603/3mm_resampled.nii.gz',
        '/data/Projects/anikolai/rockland_downsampled/A00060846/3mm_resampled.nii.gz'
    ]

    roi_mask_file = home + '/git_repo/BASC/masks/BG_3mm.nii.gz'

    dataset_bootstraps = 50
    timeseries_bootstraps = 50
    n_clusters = 3
    output_size = 400
    cross_cluster = True
    bootstrap_list = list(range(0, dataset_bootstraps))
    proc_mem = [10, 80]

    #roi2_mask_file=home + '/git_repo/BASC/masks/yeo_3mm.nii.gz'

    roi2_mask_file = home + '/git_repo/BASC/masks/yeo2_3mm.nii.gz'

    affinity_threshold = [
        0.5
    ] * 107  #[0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5]
    out_dir = '/data/Projects/anikolai/BASC_outputs/NKITest'
    run = True

    basc_test = run_basc_workflow(subject_file_list,
                                  roi_mask_file,
                                  dataset_bootstraps,
                                  timeseries_bootstraps,
                                  n_clusters,
                                  output_size,
                                  bootstrap_list,
                                  proc_mem,
                                  cross_cluster=cross_cluster,
                                  roi2_mask_file=roi2_mask_file,
                                  affinity_threshold=affinity_threshold,
                                  out_dir=out_dir,
                                  run=run)

    print((time.time() - matrixtime))