Labeling factor analysis outputs

[2]:
import cytopus as cp
import pandas as pd
import scanpy as sc
[3]:
G = cp.KnowledgeBase()
KnowledgeBase object containing 92 cell types and 201 cellular processes

write files required to re-build cytopus KnowledgeBase to .csv

[4]:
#write cell type hierarchy
cp.tl.hierarchy_to_csv(G.get_celltype_hierarchy(),filename='hierarchy.csv',header_name=['Parent','Child'])
[5]:
#write cellular processes
cp.tl.geneset_to_csv(G.processes, filename='processes.csv', header_name=['gene_set_name','gene_name'])
[6]:
#write cellular processes
cp.tl.geneset_to_csv(G.identities, filename='identities.csv', header_name=['gene_set_name','gene_name'])
[7]:
#write metadata to csv
#current cellular processes have no 'class' attribute, this will be fixed in future versions
cp.tl.metadata_to_csv(G.graph, 'metadata.csv', specific_class = False, class_value=None)

Export gene sets from KnowledgeBase as .gmt files

[4]:
#get cellular processes
gp_dict = G.processes
[5]:
#get cellular identities
cell_dict = G.identities
[8]:
#save to gmt files
cp.label.get_gmt(cell_dict,save=True,path='cell_identities.gmt')
cp.label.get_gmt(gp_dict,save=True,path='cellular_processes.gmt')
print saving to: cell_identities.gmt
print saving to: cellular_processes.gmt
[9]:
#load cellular identities gmt files
cell_gmt = pd.read_csv('cell_identities.gmt',sep='\t',header=None,index_col=0)
cell_gmt
[9]:
1 2 3 4 5 6 7 8 9 10 ... 24 25 26 27 28 29 30 31 32 33
0
TCM S1PR4 CD27 CXCR3 CD58 CD44 S1PR1 IL7R CCR7 ITGAL CD28 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
Treg ENTPD1 IL2RA TGFB1 NT5E TNFRSF9 TNFRSF18 FOXP3 CTLA4 NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
T-naive S1PR4 CD28 S1PR1 IL7R CD27 CCR7 SELL NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-pb-t2 IGHM CR2 JCHAIN FCER2 PRSS3 MME CD38 CD24 IL10 IGHD ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
endo-lymphatic PKHD1L1 MMRN1 FLT4 TFF3 SEMA3D TBX1 PROX1 RELN LINC02147 TM4SF18 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
TSCM CD28 ATXN1 SELL CD27 FAS IL2RB CCR7 IL7R NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
cDC1 DPP4 CLEC9A THBD CD8A BTLA IRF8 XCR1 ID2 CADM1 CD226 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
ILC1 KLRB1 IL1R1 IL1R2 IL12RB1 NCR3 TNFRSF10A CXCR3 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
NK-adaptive FCGR3A NCAM1 KLRC2 CD2 LILRB1 IFNG B3GAT1 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
TEM CD28 B3GAT1 IL7R CD27 FAS CD58 ITGAL IL2RB CD44 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
FDC MFGE8 FDCSP CR2 CR1 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
endo-systemic-venous IGFBP7 BMPR2 ESAM VWF AQP1 EBF1 ZNF385D PCDH17 LIMS2 IFI27 ... PDE7B CLEC14A SLCO2A1 TSHZ2 MCTP1 COL15A1 NaN NaN NaN NaN
endo-aerocyte IFI27 CA4 EXPH5 FLT1 B3GALNT1 ITM2A PCDH17 HPGD AFF3 ESAM ... ADGRL2 CYP3A5 ADGRF5 RCSD1 KIAA1217 PRKG1 ENG SOSTDC1 SHROOM4 RGCC
CD56bright-NK NCR1 ITGA5 KLRF1 IL7R CCR7 NCR3 KLRG1 KLRC1 IFNG KLRK1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
plasma-blast XBP1 IL6RA ZBTB20 TNFRSF17 IL6ST CXCR4 IRF4 HLA-DPB1 HLA-DQB1 HLA-DQA1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
CD8-T_KLRG1pos-effector ITGAL IFNG GZMB FAS CD58 IL2RB B3GAT1 KLRG1 CD44 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
p-DC FCER1G CLEC4C IRF4 NRP1 ZEB2 IRF7 IL3RA TCF4 IRF8 LILRB4 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
mast KIT TPSB2 ENPP3 MS4A2 TPSD1 PTGDR GATA2 HDC IL1RL1 TPSAB1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-memory-DN JCHAIN IGHA1 IGHM IGHA2 IGHG1 IGHG3 IGHG2 IGHG4 FCRL5 ITGAX ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-naive CCR7 CD40 SELL IGHD NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
CD4-T IL17A RORC IL6 CD4 BCL6 IL21 IL17B CD40LG ICOS GATA3 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-pb-t3 PRSS3 IGHD CD24 CD38 IL10 NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B CD79A CD79B CD19 MS4A1 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-pb-mature IGHD CD38 CD80 CD69 FCER2 CD24 CD86 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
Mac MARCO CD36 MSR1 CD68 APOE MRC1 CD163 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
gran CXCR2 CSF3R ACOD1 CEACAM8 FFAR4 MPO CD24 CTSG FUT4 LTF ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
cDC2 CD33 ID2 CD2 LILRA2 IL23A CLEC10A IRF4 FCER1G CD1C FCER1A ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
CD56dim-NK CXCR1 CXCR2 KLRK1 GZMB KLRG1 EOMES ITGA5 GZMA KLRF1 NCR1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
TRM CD69 ITGAE ITGAL CD44 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
Lti RORC IL7R IL1R2 TNFSF11 KIT CCR6 IL23R IL1R1 AHR NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
ILC3-NCRpos KLRB1 IL23R AHR KIT IL1R2 RORC ICOS IL7R TNFSF11 NCR2 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
abT CD3E CD3D CD3G NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
TFH IL6 CD84 S1PR1 IL21R CXCR5 BCL6 IL21 STAT3 NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
mono FCGR1B FCGR2A FCGR2B FCGR1A TLR2 CR1 ITGAM SPI1 RXRA CD14 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
CD8-T_KLRG1neg-effector IL2RB ITGAL B3GAT1 CD44 IL7R CD58 IFNG FAS GZMB NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-memory-IgM-MZ DTX1 CD1D NOTCH2 JCHAIN CD1C CD24 IGHM NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
cDC3 TNFSF18 CD14 FSCN1 IL15 CCR7 CD86 LAMP3 CD1C CCL22 CD163 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-memory-switched IGHM IGHG3 IGHA2 IGHG2 JCHAIN IGHA1 IGHG1 IGHG4 CD24 CD38 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
ILC3-NCRneg KLRB1 IL7R IL1R2 IL23R KIT TNFSF11 RORC AHR NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
Langerhans CDH1 EPCAM TGFBR3 CD1A RUNX3 TACSTD2 ID2 LILRA4 CD207 TGFBR1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
mo-DC CD1C MAFB ITGAX FCGR1A CD209 CD1A S100A8 SIRPA S100A9 KLF4 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
endo-arterial CLEC14A CLDN10 ITM2A EPAS1 LTBP4 CXCL12 DKK2 HEY1 IGFBP3 SHROOM4 ... LIMS2 ENG ADGRL4 NaN NaN NaN NaN NaN NaN NaN
ILC2 PTGDR2 KLRB1 AHR IL7R IL17RB CCR4 GATA3 ICOS IL2RA KLRG1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
plasma IL6ST IL6RA ZBTB20 TNFRSF17 IRF4 PRDM1 XBP1 ENPP1 IL6R HLA-DMA ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-pb-t1 IGHM JCHAIN IL10 CD38 PRSS3 CD24 MME NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
lung-endo-venous BMPR2 MMRN1 EFEMP1 MCTP1 CDH11 PTGS1 PLAT CLU ACKR1 DKK3 ... ITM2A PDZRN4 ADGRL4 IGFBP7 SHROOM4 IFI27 VWF NaN NaN NaN
gdT TRGC2 IL17F TRDC IL17B TRGC1 IL17A NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
NK KLRK1 NCR3 IL12RB1 KLRF1 NCAM1 EOMES NCR1 KLRG1 TBX21 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
capillary ADGRF5 IL18R1 CD36 SLCO2A1 NRXN3 RGCC ESAM FLT1 BTNL9 CLEC14A ... IFI27 AFF3 ENG FCN3 NaN NaN NaN NaN NaN NaN
CD8-T TRBC1 TRAC TRBC2 GZMB PRF1 GZMA EOMES CD8A CD8B NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-memory CXCR3 CD24 CD27 NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
B-memory-non-switched IGHM JCHAIN CD1C CD38 CD24 IGHD CD27 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
GC-B LTA CXCL13 BCL6 TCF3 CD38 TLR4 MKI67 AICDA NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

53 rows × 33 columns

[10]:
#load cellular identities gmt files
cell_gmt = pd.read_csv('cellular_processes.gmt',sep='\t',header=None,index_col=0)
cell_gmt
[10]:
1 2 3 4 5 6 7 8 9 10 ... 410 411 412 413 414 415 416 417 418 419
0
all_chondroitine-and-heparan-sulfate_synthesis HS3ST1 UST CHST11 HS3ST4 XYLT1 CHPF2 NDST3 B3GAT3 EXTL1 HS3ST5 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
all_retinol_metabolism ZADH2 ADH1A UGT1A8 ADH7 SDR16C5 RDH12 ALDH1A2 ALDH1A3 AOX1 RDH16 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
all_RIG-I-like-receptor_signaling IKBKG IL12A IFIH1 IFNA14 MAPK14 ATG12 MAPK8 STING1 TNF MAPK9 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
leuko_transendothelial-migration ESAM MYLPF CTNNA2 MYL12A TXK CLDN8 PTK2B MMP9 PTPN11 CLDN9 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
all_propanoate_metabolism SLC16A3 SLC5A12 SLC16A8 HIBCH SLC16A1 SLC16A7 SLC5A8 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
all_eicosanoid_metabolism CYP4F12 MGST3 SLCO4A1 TBXAS1 CYP4F8 CBR1 PTGDS SLCO2A1 PTGS2 SLC22A2 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
CD4-T_IL12_response ACVR1B RHOG UPF3A LCP1 PLXNB2 SLC6A12 ZNF516 STK40 PDE6D SLC38A2 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
all_fatty-acid-beta-oxidation-mitochondrial ACAD10 ACOT2 ETFDH ETFB ECHS1 HADHA ADH5 ADH6 ECI1 ADH1A ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
all_posttranslation-modification P4HA2 P4HB PLOD2 HMGCR SLC25A1 SLC33A1 MTMR3 P4HA1 PLOD1 GGPS1 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
all_transmembrane-transport-cellmembrane ATP2B4 ATP1A3 SLC34A2 SLC20A1 SLC17A4 SLC26A9 SLC26A4 SLC8A1 SLC26A2 SLC17A2 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

201 rows × 419 columns

Label output from Spectra or other factor analysis method

[12]:
#load example data
#this data contains a standard Spectra output in adata.obsm and adata.uns
adata = sc.read('data/adata_spectra.h5ad')
adata
[12]:
AnnData object with n_obs × n_vars = 10000 × 6397
    obs: 'cell_type_annotations'
    var: 'n_cells_by_counts', 'highly_variable', 'spectra_vocab'
    uns: 'SPECTRA_L', 'SPECTRA_factors', 'SPECTRA_markers', 'annotation_SPADE_1_colors', 'cell_type_annotations_colors', 'diffmap_evals', 'draw_graph', 'hvg', 'neighbors', 'pca'
    obsm: 'SPECTRA_cell_scores', 'X_diffmap', 'X_draw_graph_fa', 'X_pca', 'X_tsne', 'X_umap'
    varm: 'PCs'
    obsp: 'connectivities', 'distances'
[13]:
#the marker genes are stored here (but you can use any other numpy array or a list of lists)
adata.uns['SPECTRA_markers']
[13]:
array([['SLC5A6', 'BTD', 'SLC16A1', ..., 'NOD2', 'MTDH', 'IL22RA1'],
       ['SLC2A9', 'NT5E', 'XDH', ..., 'ITPA', 'FDX1', 'NDUFB3'],
       ['ALDH3B1', 'ALDH1B1', 'ALDH3A1', ..., 'S100A11', 'SV2A',
        'POLR2G'],
       ...,
       ['ZAP70', 'SGK1', 'TCF7', ..., 'CDC42EP2', 'CYB561D2', 'PODN'],
       ['TCF4', 'LILRA4', 'PLPP3', ..., 'CYP19A1', 'ASPM', 'CUL2'],
       ['FKBP11', 'IGLL5', 'CRELD2', ..., 'PELI1', 'FN3KRP', 'TCEAL7']],
      dtype=object)

load the cytopus KnoweldgeBase or a dictionary of format:

{‘gene_set_name_a’:[‘gene_a’,’gene_b’,’gene_c’,…],’gene_set_name_b’:[‘gene_a’,’gene_d’,…]}

[14]:
G = cp.KnowledgeBase()
G
KnowledgeBase object containing 92 cell types and 201 cellular processes

[14]:
<cytopus.knowledge_base.kb_queries.KnowledgeBase at 0x7fa4c7dabac0>

Get the factor cell type

In Spectra the cell scores for cell type specific factors will be != 0 only for the cell type they are specific too. All other “global” actors will be express across cell types. Currently we are not aware of another method which allows for incorporating both global and cell type specific factors. This might be extended in the future to give the degree of cell type specificity for methods which do not explicitly incorporate the cell type.

Use the get_celltype function to infer cell type specificity.

Description:

For a list of factors check in which cell types they are expressed

adata: anndata.AnnData, containing cell type labels in adata.obs[celltype_key]

celltype_key: str, key for adata.obs containing the cell type labels

factor_list: list, list of keys for factor loadings in .obs, if none use factor loadings in adata.obsm[‘SPECTRA_factors’]

return: dictionary mapping factor names and celltypes

Spectra_cell_scores: str, key for Spectra cell scores in adata.obsm

[15]:
#use function to infer cell type specificity
cell_type_specificity = cp.label.get_celltype(adata, celltype_key='cell_type_annotations',
             factor_list=None, Spectra_cell_scores= 'SPECTRA_cell_scores')

Use the label_marker_genes function to label marker genes based on their Szymkiewicz–Simpson overlap coefficient with the input gene sets

Description:

label an array of marker genes using a KnowledgeBase or a dictionary derived from the KnowledgeBase

returns a dataframe of overlap coefficients for each gene set annotation and marker gene

marker_genes: numpy.array or list of lists, factors x marker genes

gs_label_dict: cytopus.KnowledgeBase or dict, with gene set names (str) as keys and gene sets (list) as values

threshold: float, if overlap coefficient > than threshold the factor will be labeled with the gene set name with

maximum overlap coefficient

returns: pandas.DataFrame, with overlap coefficients of factors (rows) and gene sets (columns), indices are relabeled to the gene set with the maximum overlap coefficient

[16]:
#label marker genes
overlap_df = cp.label.label_marker_genes(adata.uns['SPECTRA_markers'], G.processes, threshold = 0.2)
overlap_df
[16]:
all_chondroitine-and-heparan-sulfate_synthesis all_retinol_metabolism all_RIG-I-like-receptor_signaling leuko_transendothelial-migration all_propanoate_metabolism NSCLC-carcinoma-cell_TGFB1_response all_p53-signaling all_autophagy-selective all_circadian-rhythm all_VAL-LEU-ILE_metabolism ... all_folate_metabolism all_CYP_metabolism T_IL21_response p-DC_CpG-TLR9_response all_NOD-like-receptor_signaling all_eicosanoid_metabolism CD4-T_IL12_response all_fatty-acid-beta-oxidation-mitochondrial all_posttranslation-modification all_transmembrane-transport-cellmembrane
all_biotin_metabolism 0.00 0.000000 0.00 0.0 0.142857 0.00 0.00 0.0 0.0 0.04 ... 0.058824 0.0 0.0 0.0 0.04 0.00 0.0 0.000000 0.000000 0.04
all_purine_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.00 0.08 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00
all_ethanol_metabolism 0.00 0.181818 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.086957 0.000000 0.00
all_amino-sugar-nucleotide-sugar_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.04 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00
all_steroid_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.08 0.0 0.000000 0.090909 0.00
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
mast_granule-exocytosis 0.04 0.000000 0.00 0.0 0.000000 0.00 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.04 0.0 0.000000 0.000000 0.00
192 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.08 0.0 0.000000 0.000000 0.00
p-DC_CpG-TLR9_response 0.00 0.000000 0.04 0.0 0.000000 0.00 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 1.0 0.04 0.00 0.0 0.000000 0.000000 0.00
194 0.00 0.000000 0.00 0.0 0.000000 0.04 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.04 0.0 0.000000 0.000000 0.00
195 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00

196 rows × 201 columns

[17]:
#add cell type to relabeled factor marker genes dataframe

#get celltypes
new_index = []
for i,v in enumerate(overlap_df.index):
  new_index.append(cell_type_specificity[i]+'-X-'+str(v))

#change index
overlap_df.index = new_index
overlap_df
[17]:
all_chondroitine-and-heparan-sulfate_synthesis all_retinol_metabolism all_RIG-I-like-receptor_signaling leuko_transendothelial-migration all_propanoate_metabolism NSCLC-carcinoma-cell_TGFB1_response all_p53-signaling all_autophagy-selective all_circadian-rhythm all_VAL-LEU-ILE_metabolism ... all_folate_metabolism all_CYP_metabolism T_IL21_response p-DC_CpG-TLR9_response all_NOD-like-receptor_signaling all_eicosanoid_metabolism CD4-T_IL12_response all_fatty-acid-beta-oxidation-mitochondrial all_posttranslation-modification all_transmembrane-transport-cellmembrane
global-X-all_biotin_metabolism 0.00 0.000000 0.00 0.0 0.142857 0.00 0.00 0.0 0.0 0.04 ... 0.058824 0.0 0.0 0.0 0.04 0.00 0.0 0.000000 0.000000 0.04
global-X-all_purine_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.00 0.08 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00
global-X-all_ethanol_metabolism 0.00 0.181818 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.086957 0.000000 0.00
global-X-all_amino-sugar-nucleotide-sugar_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.04 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00
global-X-all_steroid_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.08 0.0 0.000000 0.090909 0.00
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
mast-X-mast_granule-exocytosis 0.04 0.000000 0.00 0.0 0.000000 0.00 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.04 0.0 0.000000 0.000000 0.00
mast-X-192 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.08 0.0 0.000000 0.000000 0.00
pDC-X-p-DC_CpG-TLR9_response 0.00 0.000000 0.04 0.0 0.000000 0.00 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 1.0 0.04 0.00 0.0 0.000000 0.000000 0.00
pDC-X-194 0.00 0.000000 0.00 0.0 0.000000 0.04 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.04 0.0 0.000000 0.000000 0.00
plasma-X-195 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00

196 rows × 201 columns

[18]:
#add index to make labels unique
new_index =[]
for h,i in enumerate(overlap_df.index):
    new_index.append(str(h)+'-X-'+str(i))

overlap_df.index = new_index
overlap_df
[18]:
all_chondroitine-and-heparan-sulfate_synthesis all_retinol_metabolism all_RIG-I-like-receptor_signaling leuko_transendothelial-migration all_propanoate_metabolism NSCLC-carcinoma-cell_TGFB1_response all_p53-signaling all_autophagy-selective all_circadian-rhythm all_VAL-LEU-ILE_metabolism ... all_folate_metabolism all_CYP_metabolism T_IL21_response p-DC_CpG-TLR9_response all_NOD-like-receptor_signaling all_eicosanoid_metabolism CD4-T_IL12_response all_fatty-acid-beta-oxidation-mitochondrial all_posttranslation-modification all_transmembrane-transport-cellmembrane
0-X-global-X-all_biotin_metabolism 0.00 0.000000 0.00 0.0 0.142857 0.00 0.00 0.0 0.0 0.04 ... 0.058824 0.0 0.0 0.0 0.04 0.00 0.0 0.000000 0.000000 0.04
1-X-global-X-all_purine_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.00 0.08 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00
2-X-global-X-all_ethanol_metabolism 0.00 0.181818 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.086957 0.000000 0.00
3-X-global-X-all_amino-sugar-nucleotide-sugar_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.04 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00
4-X-global-X-all_steroid_metabolism 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.08 0.0 0.000000 0.090909 0.00
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
191-X-mast-X-mast_granule-exocytosis 0.04 0.000000 0.00 0.0 0.000000 0.00 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.04 0.0 0.000000 0.000000 0.00
192-X-mast-X-192 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.08 0.0 0.000000 0.000000 0.00
193-X-pDC-X-p-DC_CpG-TLR9_response 0.00 0.000000 0.04 0.0 0.000000 0.00 0.04 0.0 0.0 0.00 ... 0.000000 0.0 0.0 1.0 0.04 0.00 0.0 0.000000 0.000000 0.00
194-X-pDC-X-194 0.00 0.000000 0.00 0.0 0.000000 0.04 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.04 0.0 0.000000 0.000000 0.00
195-X-plasma-X-195 0.00 0.000000 0.00 0.0 0.000000 0.00 0.00 0.0 0.0 0.00 ... 0.000000 0.0 0.0 0.0 0.00 0.00 0.0 0.000000 0.000000 0.00

196 rows × 201 columns