PROMISED: Prediction of Renal Outcome using Multiomics and Integrated Statistical Evaluation of Delayed Graft Function in kidney transplant recipients.
This repository is tested under the following system settings:
Python 3.7.9
(is recommended to create avenv
)
Clone this repository from Github
git clone https://github.com/ginTom/PROMISED.git
- Install Python dependencies for CTGAN project
pip install -r CTGAN_requirements.txt
Clone MOGONET repository from Github and install dependencies
git clone https://github.com/txWang/MOGONET.git
pip install -r MOGONET_requirements.txt
Install the mixOmics R package from Bioconductor; you may need to install the latest R version and the latest BiocManager package installed.
## install BiocManager if not installed
if (!requireNamespace("BiocManager", quietly = TRUE)) {
install.packages("BiocManager")}
## install mixOmics
BiocManager::install('mixOmics')
A logistic regression (LR) model with recursive feature elimination (RFE) was fitted on SNPs data to select the first 100 discriminant features using sklearn
python package
import pandas as pd
from sklearn.feature_selection import RFE
from sklearn.linear_model import LogisticRegression
from sklearn.feature_selection import f_classif
snp_path = 'path/to/snp/data'
snp_data = pd.read_csv(snp_path)
snp_label = snp_data['class']
snp_data.drop(columns=["class"], inplace=True)
model = LogisticRegression()
rfe = RFE(model, n_features_to_select=100)
fit = rfe.fit(snp_data, snp_label)
snp_features = snp_data.columns.to_numpy()[fit.support_]
Launch CTGAN_main.py
to generate and obtain training data for each omic:
python CTGAN_main.py
label_tr.csv
: labels for trainin setlabel_te.csv
: labels for test set{1,2}_featname.csv
: feature names for each omic{1,2}_tr.csv
: traing data{1,2}_te.csv
: test data
Create folder with all training data;
Customize data_folder
and view_list
in MOGONET/main_mogonet.py
Customize data_folder
and view_list
in MOGONET/main_biomarker.py
Launch DGF_mixomics.R
to get all results from DIABLO model