コード例 #1
0
def main():
    input_data = ju.read(INPUT_JSON)

    manifest_file = input_data.get('manifest_file')
    manifest_file = os.path.join(TOP_DIR, manifest_file)

    log_level = input_data.get('log_level', logging.DEBUG)
    logging.getLogger().setLevel(log_level)

    # get cache, metric
    logging.debug("loading regional matrix")
    cache = VoxelModelCache(manifest_file=manifest_file)
    df_metric = cache.get_normalized_connection_density(dataframe=True)

    # plot
    fig = plot(df_metric,
               STRUCTURES,
               cache,
               GRID_KWS,
               CBAR_KWS,
               HEATMAP_KWS,
               figsize=FIGSIZE)

    fig.savefig(OUTPUT_FILE, **SAVEFIG_KWARGS)
    plt.close(fig)
コード例 #2
0
def main():
    input_data = ju.read(INPUT_JSON)

    manifest_file = input_data.get('manifest_file')
    manifest_file = os.path.join(TOP_DIR, manifest_file)

    log_level = input_data.get('log_level', logging.DEBUG)
    logging.getLogger().setLevel(log_level)

    # get cache, metric
    logging.debug("loading regional matrix")
    cache = VoxelModelCache(manifest_file=manifest_file)
    df_metric = cache.get_normalized_connection_density(dataframe=True)

    logging.debug("getting cortical network")
    df_cortex = get_cortical_df(df_metric, cache)

    # get projection types
    full_ipsi, cortex_ipsi = get_pt((df_metric, df_cortex))
    full_contra, cortex_contra = get_pt((df_metric, df_cortex), pt="contra")

    logging.debug("Computing gaussian mixture model fits for max: %s" %
                  MAX_COMPONENTS)

    dfs = (full_ipsi, full_contra, cortex_ipsi, cortex_contra)
    labels = ("full-ipsi", "full-contra", "cortex-ipsi", "cortex-contra")

    frames = []
    for d, l in zip(dfs, labels):
        # log transform
        d = np.log10(d[d > 0]).reshape(-1, 1)

        # normality test
        _, p_value = stats.shapiro(d)

        # gmm
        gmm, bic = fit_gmm(d, MAX_COMPONENTS, **GMM_PARAMS)

        columns = ('mean', 'var', 'weight')
        print("", l, "-" * 40, sep="\n")
        print("shapiro-wilk p_value : %.5g" % p_value)
        print("optimal n components : %d" % gmm.n_components)
        print("bic                  : %.5g" % bic)
        print('\t'.join(columns))
        print("----\t---\t------")

        attrs = tuple(
            map(np.ravel, (gmm.means_, gmm.covariances_, gmm.weights_)))

        for x in zip(*attrs):
            print("%.2f\t%.2f\t%.3f" % x)

        df = pd.DataFrame(dict(zip(columns, attrs)))
        df.index.name = 'n_components'
        frames.append(df)

    df = pd.concat(frames, keys=labels).unstack()
    df.to_csv(OUTPUT_FILE)
コード例 #3
0
def main():
    input_data = ju.read(INPUT_JSON)

    manifest_file = input_data.get('manifest_file')
    manifest_file = os.path.join(TOP_DIR, manifest_file)

    log_level = input_data.get('log_level', logging.DEBUG)
    logging.getLogger().setLevel(log_level)

    # get cache, metric
    logging.debug("loading regional matrix")
    cache = VoxelModelCache(manifest_file=manifest_file)
    df_metric = cache.get_normalized_connection_density(dataframe=True)

    logging.debug("getting cortical network")
    df_cortex = get_cortical_df(df_metric, cache)

    # get projection types
    full_ipsi, cortex_ipsi = get_pt((df_metric, df_cortex))
    full_contra, cortex_contra = get_pt((df_metric, df_cortex), pt="contra")

    logging.debug("Computing distribution fits for")
    logging.debug("%s" % DISTRIBUTIONS)

    fitter = DistFit(DISTRIBUTIONS)

    dfs = (full_ipsi, full_contra, cortex_ipsi, cortex_contra)
    labels = ("full-ipsi", "full-contra", "cortex-ipsi", "cortex-contra")

    frames = []
    for d, l in zip(dfs, labels):
        fitter.fit(d[d > 0])
        logging.debug(l)
        logging.debug(str(fitter))
        frames.append(results_to_df(fitter))

    df = pd.concat(frames, keys=labels).unstack()
    df.to_csv(OUTPUT_FILE)
コード例 #4
0
if __name__ == "__main__":

    input_data = ju.read(INPUT_JSON)

    manifest_file = input_data.get('manifest_file')
    manifest_file = os.path.join(TOP_DIR, manifest_file)

    log_level = input_data.get('log_level', logging.DEBUG)
    logging.getLogger().setLevel(log_level)

    # configure
    colors = sns.color_palette(n_colors=2)

    # get cache, metric
    cache = VoxelModelCache(manifest_file=manifest_file)
    df_metric = cache.get_normalized_connection_density(dataframe=True)

    logging.debug("getting cortical network")
    df_cortex = get_cortical_df(df_metric, cache)

    # region acs
    region_acs = df_metric.index.values

    logging.debug("computing distances")
    d = get_distances(region_acs, cache)
    d = to_dataframe(d, df_metric.index, df_metric.columns)
    d_cortex = get_cortical_df(d, cache)

    # get projection types
    full_ipsi = get_pt((d, df_metric), thresh=0)
    full_contra = get_pt((d, df_metric), thresh=0, pt="contra")