In [ ]:
from environment import *
with open("../project.json") as io:
PROJECT_JSON = json.load(io)
PATH = make_path_dict(PROJECT_JSON)
In [ ]:
target_x_sample = pd.read_csv(PATH["target_x_sample.tsv"], sep="\t", index_col=0)
gene_set_x_sample = pd.read_csv(PATH["gene_set_x_sample.tsv"], sep="\t", index_col=0)
In [ ]:
figure_name_data_name_indices = {
"Summary": {
"Stem": (
"GOTZMANN_EPITHELIAL_TO_MESENCHYMAL_TRANSITION_UP",
"MIKKELSEN_IPS_LCP_WITH_H3K4ME3",
"IVANOVA_HEMATOPOIESIS_STEM_CELL_AND_PROGENITOR",
"HOEBEKE_LYMPHOID_STEM_CELL_UP",
"BENPORATH_ES_WITH_H3K27ME3",
"MIKKELSEN_IPS_WITH_HCP_H3K27ME3",
"Cancer Stem Cell",
"BENPORATH_ES_CORE_NINE",
),
"Oncogenic": (
"BIOCARTA_WNT_PATHWAY",
"E2F3_UP.V1_UP",
"HALLMARK_WNT_BETA_CATENIN_SIGNALING",
"HALLMARK_E2F_TARGETS",
"PRC2_EZH2_UP.V1_UP",
"HALLMARK_TGF_BETA_SIGNALING",
"HALLMARK_NOTCH_SIGNALING",
),
"NFkB": ("TIAN_TNF_SIGNALING_VIA_NFKB", "HINATA_NFKB_TARGETS_KERATINOCYTE_UP"),
"Differentiation": (
"RODRIGUES_THYROID_CARCINOMA_POORLY_DIFFERENTIATED_UP",
"MA_MYELOID_DIFFERENTIATION_UP",
"ADDYA_ERYTHROID_DIFFERENTIATION_BY_HEMIN",
),
}
}
In [ ]:
for target_name, target_values in target_x_sample.iterrows():
target_values = target_values[target_values != -1]
if target_values.value_counts().min() < 2:
continue
output_directory_path = os.path.join(PATH["summarize_gene_set/"], target_name)
kraft.establish_path(output_directory_path, "directory")
for figure_name, data_name_indices in figure_name_data_name_indices.items():
data_dicts = {}
score_moe_p_value_fdr_dicts = {}
for data_name, indices in data_name_indices.items():
data_dicts[data_name] = {
"dataframe": gene_set_x_sample.reindex(index=indices),
"type": "continuous",
}
score_moe_p_value_fdr_dicts[data_name] = pd.read_csv(
os.path.join(
PATH["find_differentially_expressed_gene_set/"],
target_name,
"all.tsv",
),
sep="\t",
index_col=0,
)
kraft.make_summary_match_panel(
target_values,
data_dicts,
score_moe_p_value_fdr_dicts,
target_data_type="binary",
plot_std=PROJECT_JSON["plot_std"],
title_text=figure_name,
html_file_path=os.path.join(output_directory_path, f"{figure_name}.html"),
)