diff --git a/runs.ipynb b/runs.ipynb
index cecb6b01b..38cde8419 100644
--- a/runs.ipynb
+++ b/runs.ipynb
@@ -14,38 +14,26 @@
},
{
"cell_type": "code",
- "execution_count": 1,
+ "execution_count": 42,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
+ "upload: resources/grn_models/donor_0_default/pearson_causal.csv to s3://openproblems-data/resources/grn/grn_models/donor_0_default/pearson_causal.csv\n",
+ "delete: s3://openproblems-data/resources/grn/results/d0_hvgs_baseline/ridge.pearson_causal.pearson_causal.prediction.csv\n",
+ "delete: s3://openproblems-data/resources/grn/results/d0_hvgs_baseline/state.yaml\n",
+ "delete: s3://openproblems-data/resources/grn/results/d0_hvgs_baseline/ridge.pearson_corr.pearson_corr.prediction.csv\n",
+ "delete: s3://openproblems-data/resources/grn/results/d0_hvgs_baseline/scores.yaml\n",
+ "delete: s3://openproblems-data/resources/grn/results/d0_hvgs_baseline/trace.txt\n",
+ "upload: resources/results/scores/hvg_GB.csv to s3://openproblems-data/resources/grn/results/scores/hvg_GB.csv\n",
+ "delete: s3://openproblems-data/resources/grn/results/scores/scgen_pearson-GB.csv\n",
"upload: resources/results/robustness_analysis/corr/scores_corr.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/corr/scores_corr.csv\n",
- "upload: resources/results/robustness_analysis/net-100-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/net-100-scores.csv\n",
- "upload: resources/results/robustness_analysis/sign-10-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/sign-10-scores.csv\n",
- "upload: resources/results/robustness_analysis/sign-100-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/sign-100-scores.csv\n",
- "upload: resources/results/robustness_analysis/net-50-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/net-50-scores.csv\n",
- "upload: resources/results/robustness_analysis/sign-50-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/sign-50-scores.csv\n",
- "upload: resources/results/robustness_analysis/sign-20-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/sign-20-scores.csv\n",
- "upload: resources/results/robustness_analysis/sign-0-scores.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/sign-0-scores.csv\n",
- "upload: resources/results/robustness_analysis/tmp/genie3.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/genie3.csv\n",
- "upload: resources/results/robustness_analysis/tmp/pearson_corr.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/pearson_corr.csv\n",
- "upload: resources/results/robustness_analysis/tmp/negative_control.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/negative_control.csv\n",
- "upload: resources/results/robustness_analysis/tmp/positive_control.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/positive_control.csv\n",
- "delete: s3://openproblems-data/resources/grn/results/scores/layers/scgen_pearson-GB.csv\n",
- "upload: resources/results/robustness_analysis/tmp/collectri.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/collectri.csv\n",
- "upload: resources/results/robustness_analysis/tmp/scglue.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/scglue.csv\n",
- "upload: resources/results/robustness_analysis/tmp/pearson_causal.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/pearson_causal.csv\n",
- "upload: resources/results/robustness_analysis/tmp/ppcor.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/ppcor.csv\n",
- "upload: resources/results/robustness_analysis/tmp/portia.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/portia.csv\n",
- "upload: resources/results/scores/layers/seurat_lognorm-ridge.csv to s3://openproblems-data/resources/grn/results/scores/layers/seurat_lognorm-ridge.csv\n",
- "upload: resources/results/robustness_analysis/corr/corr.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/corr/corr.csv\n",
- "upload: resources/results/scores/layers/seurat_pearson-ridge.csv to s3://openproblems-data/resources/grn/results/scores/layers/seurat_pearson-ridge.csv\n",
- "upload: resources/results/scores/scgen_pearson-GB.csv to s3://openproblems-data/resources/grn/results/scores/scgen_pearson-GB.csv\n",
- "upload: resources/results/robustness_analysis/tmp/scenic.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/scenic.csv\n",
- "upload: resources/results/robustness_analysis/tmp/grnboost2.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/grnboost2.csv\n",
- "upload: resources/results/robustness_analysis/tmp/celloracle.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/tmp/celloracle.csv\n"
+ "upload: resources/results/robustness_analysis/corr/scores_causal.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/corr/scores_causal.csv\n",
+ "delete: s3://openproblems-data/resources/grn/results/d0_hvgs_baseline/ridge.positive_control.positive_control.prediction.csv\n",
+ "upload: resources/results/robustness_analysis/corr/corr_causal.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/corr/corr_causal.csv\n",
+ "upload: resources/results/robustness_analysis/corr/corr.csv to s3://openproblems-data/resources/grn/results/robustness_analysis/corr/corr.csv\n"
]
}
],
@@ -66,7 +54,7 @@
},
{
"cell_type": "code",
- "execution_count": 2,
+ "execution_count": 46,
"metadata": {},
"outputs": [],
"source": [
@@ -112,11 +100,11 @@
" \n",
" \n",
" if models_all is None:\n",
- " df_reg1 = extract_data(data, reg='reg1').drop(columns=['Mean'])\n",
- " df_reg2 = extract_data(data, reg='reg2').drop(columns=['Mean'])\n",
+ " df_reg1 = extract_data(data, reg='reg1')\n",
+ " df_reg2 = extract_data(data, reg='reg2')\n",
" else:\n",
- " df_reg1 = extract_data(data, reg='reg1').reindex(models_all).drop(columns=['Mean'])\n",
- " df_reg2 = extract_data(data, reg='reg2').reindex(models_all).drop(columns=['Mean'])\n",
+ " df_reg1 = extract_data(data, reg='reg1').reindex(models_all)\n",
+ " df_reg2 = extract_data(data, reg='reg2').reindex(models_all)\n",
" # df_all = pd.concat([df_reg1, df_reg2], axis=1).fillna(0)\n",
" # df_all_n = (df_all-df_all.min(axis=0))/(df_all.max(axis=0)-df_all.min(axis=0))\n",
" # df_all['Rank'] = df_all_n.mean(axis=1).rank(ascending=False).astype(int)\n",
@@ -124,7 +112,73 @@
" return df_all\n",
"\n",
"\n",
- "methods = [ 'collectri', 'negative_control', 'positive_control', 'pearson_corr', 'pearson_causal', 'portia', 'ppcor', 'genie3', 'grnboost2', 'scenic', 'scglue', 'celloracle']"
+ "methods = [ 'collectri', 'negative_control', 'positive_control', 'pearson_corr', 'portia', 'ppcor', 'genie3', 'grnboost2', 'scenic', 'scglue', 'celloracle']"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " S1 | \n",
+ " S2 | \n",
+ " static-theta-0.0 | \n",
+ " static-theta-0.5 | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " positive_control | \n",
+ " 0.197129 | \n",
+ " 0.578822 | \n",
+ " 0.530848 | \n",
+ " 0.584694 | \n",
+ "
\n",
+ " \n",
+ " pearson_corr | \n",
+ " 0.269379 | \n",
+ " 0.509297 | \n",
+ " 0.750452 | \n",
+ " 0.542506 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " S1 S2 static-theta-0.0 static-theta-0.5\n",
+ "positive_control 0.197129 0.578822 0.530848 0.584694\n",
+ "pearson_corr 0.269379 0.509297 0.750452 0.542506"
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "process_data(\"d0_hvgs_baseline\")"
]
},
{
@@ -174,6 +228,45 @@
"# d0_hvgs"
]
},
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Baseline models"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{'write_dir': 'resources/grn_models/d0_hvgs', 'multiomics_rna': 'resources/grn-benchmark/multiomics_rna_d0_hvg.h5ad', 'perturbation_data': 'resources/grn-benchmark/perturbation_data.h5ad', 'tf_all': 'resources/prior/tf_all.csv', 'max_n_links': 50000, 'layer': 'scgen_pearson', 'cell_type_specific': False, 'normalize': False, 'causal': True, 'prediction': 'resources/grn_models/d0_hvgs/pearson_corr.csv'}\n",
+ "Read data\n",
+ "Causal subsetting\n",
+ "Reading input data\n",
+ "Inferring GRN\n",
+ "{'write_dir': 'resources/grn_models/d0_hvgs', 'multiomics_rna': 'resources/grn-benchmark/perturbation_data.h5ad', 'perturbation_data': 'resources/grn-benchmark/perturbation_data.h5ad', 'tf_all': 'resources/prior/tf_all.csv', 'max_n_links': 50000, 'layer': 'scgen_pearson', 'cell_type_specific': False, 'normalize': False, 'causal': True, 'prediction': 'resources/grn_models/d0_hvgs/positive_control.csv'}\n",
+ "Read data\n",
+ "adata.X is already dense.\n",
+ "Causal subsetting\n"
+ ]
+ }
+ ],
+ "source": [
+ "!python src/control_methods/script_all.py"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Calculate scores for one layer"
+ ]
+ },
{
"cell_type": "code",
"execution_count": null,
@@ -186,14 +279,14 @@
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "Submitted batch job 7746215\n"
+ "Submitted batch job 7747147\n"
]
}
],
@@ -531,314 +624,314 @@
},
{
"cell_type": "code",
- "execution_count": 17,
+ "execution_count": 44,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
- "\n",
+ "\n",
" \n",
" \n",
" | \n",
- " S1 | \n",
- " S2 | \n",
- " static-theta-0.0 | \n",
- " static-theta-0.5 | \n",
- " rank | \n",
+ " S1 | \n",
+ " S2 | \n",
+ " static-theta-0.0 | \n",
+ " static-theta-0.5 | \n",
+ " rank | \n",
"
\n",
" \n",
" \n",
" \n",
- " collectri | \n",
- " -0.100238 | \n",
- " -0.211182 | \n",
- " 0.489316 | \n",
- " 0.514896 | \n",
- " 12 | \n",
+ " collectri | \n",
+ " -0.100238 | \n",
+ " -0.211182 | \n",
+ " 0.489316 | \n",
+ " 0.514896 | \n",
+ " 12 | \n",
"
\n",
" \n",
- " negative_control | \n",
- " -0.043795 | \n",
- " -0.045561 | \n",
- " 0.459080 | \n",
- " 0.505002 | \n",
- " 11 | \n",
+ " negative_control | \n",
+ " -0.043795 | \n",
+ " -0.045561 | \n",
+ " 0.459080 | \n",
+ " 0.505002 | \n",
+ " 11 | \n",
"
\n",
" \n",
- " positive_control | \n",
- " 0.489147 | \n",
- " 0.677155 | \n",
- " 0.655407 | \n",
- " 0.574608 | \n",
- " 2 | \n",
+ " positive_control | \n",
+ " 0.489147 | \n",
+ " 0.677155 | \n",
+ " 0.655407 | \n",
+ " 0.574608 | \n",
+ " 2 | \n",
"
\n",
" \n",
- " pearson_corr | \n",
- " 0.238664 | \n",
- " 0.514612 | \n",
- " 0.529502 | \n",
- " 0.524232 | \n",
- " 7 | \n",
+ " pearson_corr | \n",
+ " 0.238664 | \n",
+ " 0.514612 | \n",
+ " 0.529502 | \n",
+ " 0.524232 | \n",
+ " 7 | \n",
"
\n",
" \n",
- " pearson_causal | \n",
- " 0.355256 | \n",
- " 0.578753 | \n",
- " 0.741328 | \n",
- " 0.560490 | \n",
- " 4 | \n",
+ " pearson_causal | \n",
+ " 0.355256 | \n",
+ " 0.578753 | \n",
+ " 0.741328 | \n",
+ " 0.560490 | \n",
+ " 4 | \n",
"
\n",
" \n",
- " portia | \n",
- " 0.148941 | \n",
- " 0.227248 | \n",
- " 0.451256 | \n",
- " 0.518048 | \n",
- " 8 | \n",
+ " portia | \n",
+ " 0.148941 | \n",
+ " 0.227248 | \n",
+ " 0.451256 | \n",
+ " 0.518048 | \n",
+ " 8 | \n",
"
\n",
" \n",
- " ppcor | \n",
- " 0.022846 | \n",
- " 0.094107 | \n",
- " 0.396680 | \n",
- " 0.509874 | \n",
- " 10 | \n",
+ " ppcor | \n",
+ " 0.022846 | \n",
+ " 0.094107 | \n",
+ " 0.396680 | \n",
+ " 0.509874 | \n",
+ " 10 | \n",
"
\n",
" \n",
- " genie3 | \n",
- " 0.372641 | \n",
- " 0.490357 | \n",
- " 0.754073 | \n",
- " 0.576580 | \n",
- " 3 | \n",
+ " genie3 | \n",
+ " 0.372641 | \n",
+ " 0.490357 | \n",
+ " 0.754073 | \n",
+ " 0.576580 | \n",
+ " 3 | \n",
"
\n",
" \n",
- " grnboost2 | \n",
- " 0.381032 | \n",
- " 0.459860 | \n",
- " 0.781852 | \n",
- " 0.609075 | \n",
- " 1 | \n",
+ " grnboost2 | \n",
+ " 0.381032 | \n",
+ " 0.459860 | \n",
+ " 0.781852 | \n",
+ " 0.609075 | \n",
+ " 1 | \n",
"
\n",
" \n",
- " scenic | \n",
- " 0.147553 | \n",
- " 0.214694 | \n",
- " 0.600839 | \n",
- " 0.574294 | \n",
- " 6 | \n",
+ " scenic | \n",
+ " 0.147553 | \n",
+ " 0.214694 | \n",
+ " 0.600839 | \n",
+ " 0.574294 | \n",
+ " 6 | \n",
"
\n",
" \n",
- " scglue | \n",
- " 0.078309 | \n",
- " 0.238859 | \n",
- " 0.448617 | \n",
- " 0.527076 | \n",
- " 9 | \n",
+ " scglue | \n",
+ " 0.078309 | \n",
+ " 0.238859 | \n",
+ " 0.448617 | \n",
+ " 0.527076 | \n",
+ " 9 | \n",
"
\n",
" \n",
- " celloracle | \n",
- " 0.216897 | \n",
- " 0.311451 | \n",
- " 0.639556 | \n",
- " 0.580147 | \n",
- " 5 | \n",
+ " celloracle | \n",
+ " 0.216897 | \n",
+ " 0.311451 | \n",
+ " 0.639556 | \n",
+ " 0.580147 | \n",
+ " 5 | \n",
"
\n",
" \n",
"
\n"
],
"text/plain": [
- ""
+ ""
]
},
- "execution_count": 17,
+ "execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
@@ -2332,31 +2425,12 @@
},
{
"cell_type": "code",
- "execution_count": 31,
+ "execution_count": 37,
"metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "{'reg_type': 'ridge', 'write_dir': 'resources/results/robustness_analysis', 'perturbation_data': 'resources/grn-benchmark/perturbation_data.h5ad', 'cell_type_specific': False, 'normalize': False, 'multiomics_rna': 'resources/grn-benchmark/multiomics_rna_d0_hvg.h5ad', 'tf_all': 'resources/prior/tf_all.csv', 'max_n_links': 50000, 'apply_tf': False, 'subsample': -2, 'verbose': 2, 'binarize': True, 'num_workers': 20, 'consensus': 'resources/prior/consensus-num-regulators.json', 'static_only': True, 'clip_scores': True, 'layer': 'scgen_pearson', 'prediction': 'resources/results/robustness_analysis/corr/corr_causal.csv', 'causal': True}\n",
- "Read data\n",
- "Causal subsetting\n",
- " target source weight\n",
- "0 AC107068.2 NFXL1 0.831974\n",
- "1 FBN1 NR4A3 0.763036\n",
- "2 BIRC3 NR4A3 0.751467\n",
- "3 MFSD12 HMG20B 0.747598\n",
- "4 STX17-AS1 NR4A3 0.744736\n",
- "Traceback (most recent call last):\n",
- " File \"/home/jnourisa/projs/ongoing/task_grn_inference/src/robustness_analysis/script_all.py\", line 128, in \n",
- " aa\n",
- "NameError: name 'aa' is not defined\n"
- ]
- }
- ],
+ "outputs": [],
"source": [
- "!python src/robustness_analysis/script_all.py"
+ "# !python src/robustness_analysis/script_all.py\n",
+ "!sbatch scripts/sbatch/robustness_analysis.sh"
]
},
{
@@ -2368,7 +2442,7 @@
},
{
"cell_type": "code",
- "execution_count": 20,
+ "execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
@@ -2379,55 +2453,23 @@
},
{
"cell_type": "code",
- "execution_count": 14,
+ "execution_count": 41,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "[False True False False False False False False False True False False\n",
- " False False False True False False False False False False False False\n",
- " False False False False False False False False False False False True\n",
- " False False False False False False False False True True False True\n",
- " False False False False False True False False False False False False\n",
- " False False False False False False True True True False True False\n",
- " False False False False False False False False False True False True\n",
- " False False True True False False False False False False True False\n",
- " False False False False]\n",
- "[False True True True True True True True True True False False\n",
- " True True True True False False True True True False True True\n",
- " True True True False True True False True False True False True\n",
- " True False True True False True False True True True False True\n",
- " True True True True False True False True False False True True\n",
- " True True False True True True True True True True True True\n",
- " True True True False True True True True False True True True\n",
- " False True True True True False False False True True True True\n",
- " True True True False]\n",
- "[ True True True True False False True False True True True True\n",
- " True True False True True False True True True False False True\n",
- " True False False False True True True True True True True True\n",
- " True False True True False True True False True True True True\n",
- " True True False True True True True True True True True True\n",
- " True True True False True True False True True True True True\n",
- " True True False True False True False True False True False True\n",
- " True False True True True True True True True False True True\n",
- " True False True True]\n",
- "[False False False True False False False False True False True False\n",
- " False False False False False False False False False False False False\n",
- " False False False True True False False False False False False True\n",
- " False False False False False True False False True False True False\n",
- " False False False True False False True True False False False False\n",
- " False False False False True False False True False False True False\n",
- " False True False False False False False False False False False False\n",
- " False False True True False True True False False False False False\n",
- " True False False False]\n"
+ "S1 17\n",
+ "S2 74\n",
+ "static-theta-0.0 76\n",
+ "static-theta-0.5 21\n"
]
}
],
"source": [
"for col in scores_corr.columns:\n",
- " print(scores_corr[col].values np.ndarray:
+ ratio = [.98, .01, 0.01]
+
+ net = np.random.choice([0, -1, 1], size=((len(gene_names), n_tf)),p=ratio)
+ net = pd.DataFrame(net, index=gene_names, columns=tfs)
+ return net
+ print('Inferring GRN')
+ net = create_negative_control(gene_names)
+
+ pivoted_net = net.reset_index().melt(id_vars='index', var_name='source', value_name='weight')
+
+ pivoted_net = pivoted_net.rename(columns={'index': 'target'})
+ pivoted_net = pivoted_net[pivoted_net['weight'] != 0]
+
+ pivoted_net = process_links(pivoted_net, par)
+ return pivoted_net
diff --git a/src/control_methods/negative_control/script.py b/src/control_methods/negative_control/script.py
index 2c62a4f5f..21348b2fd 100644
--- a/src/control_methods/negative_control/script.py
+++ b/src/control_methods/negative_control/script.py
@@ -2,6 +2,7 @@
import anndata as ad
import sys
import numpy as np
+import sys
## VIASH START
par = {
@@ -12,37 +13,11 @@
}
## VIASH END
print(par)
-
-def process_links(net, par):
- net = net[net.source!=net.target]
- net = net.sample(par['max_n_links'])
- print(net)
- return net
-
-print('Reading input data')
-perturbation_data = ad.read_h5ad(par["perturbation_data"])
-gene_names = perturbation_data.var_names.to_numpy()
-tf_all = np.loadtxt(par['tf_all'], dtype=str)
-
-n_tf = 500
-tfs = tf_all[:n_tf]
-
-def create_negative_control(gene_names) -> np.ndarray:
- ratio = [.98, .01, 0.01]
-
- net = np.random.choice([0, -1, 1], size=((len(gene_names), n_tf)),p=ratio)
- net = pd.DataFrame(net, index=gene_names, columns=tfs)
- return net
-print('Inferring GRN')
-net = create_negative_control(gene_names)
-
-pivoted_net = net.reset_index().melt(id_vars='index', var_name='source', value_name='weight')
-
-pivoted_net = pivoted_net.rename(columns={'index': 'target'})
-pivoted_net = pivoted_net[pivoted_net['weight'] != 0]
-
-pivoted_net = process_links(pivoted_net, par)
-
-print('Saving')
-pivoted_net.to_csv(par["prediction"])
+meta = {
+ 'resources_dir':'src/control_methods/negative_control'
+}
+sys.path.append(meta['resources_dir'])
+from main import main
+prediction = main(par)
+prediction.to_csv(par["prediction"])
diff --git a/src/control_methods/positive_control/script.py b/src/control_methods/positive_control/script.py
index b3772a432..de07531d0 100644
--- a/src/control_methods/positive_control/script.py
+++ b/src/control_methods/positive_control/script.py
@@ -25,8 +25,6 @@
print('Create causal corr net')
par['causal'] = True
par['multiomics_rna'] = par['perturbation_data']
-par['only_hvgs'] = False
-
net = create_corr_net(par)
print('Output GRN')
diff --git a/src/control_methods/script_all.py b/src/control_methods/script_all.py
new file mode 100644
index 000000000..b0ecd1dab
--- /dev/null
+++ b/src/control_methods/script_all.py
@@ -0,0 +1,47 @@
+import pandas as pd
+import anndata as ad
+import sys
+import numpy as np
+import os
+import random
+
+par = {
+ 'write_dir': "resources/grn_models/d0_hvgs",
+ "multiomics_rna": "resources/grn-benchmark/multiomics_rna_d0_hvg.h5ad",
+
+ "perturbation_data": "resources/grn-benchmark/perturbation_data.h5ad",
+ "tf_all": "resources/prior/tf_all.csv",
+ "max_n_links": 50000,
+ 'layer': 'scgen_pearson',
+ 'cell_type_specific': False,
+ 'normalize': False,
+ 'causal': True
+}
+
+meta = {
+ "resources_dir": 'src/control_methods',
+ "util": 'src/utils'
+}
+sys.path.append(meta["resources_dir"])
+sys.path.append(meta["util"])
+
+os.makedirs(par['write_dir'], exist_ok=True)
+
+from util import create_corr_net
+
+
+#---- run for pearson_corr
+par['prediction'] = f"{par['write_dir']}/pearson_corr.csv"
+par['causal'] = True
+net = create_corr_net(par)
+net.to_csv(par['prediction'])
+#---- run for negative control
+from negative_control.main import main
+par['prediction'] = f"{par['write_dir']}/negative_control.csv"
+net = main(par)
+net.to_csv(par['prediction'])
+#---- run for positive_control
+par['multiomics_rna'] = par['perturbation_data']
+par['prediction'] = f"{par['write_dir']}/positive_control.csv"
+net = create_corr_net(par)
+net.to_csv(par['prediction'])
diff --git a/src/metrics/script_all.py b/src/metrics/script_all.py
index 289d70235..3d10e6867 100644
--- a/src/metrics/script_all.py
+++ b/src/metrics/script_all.py
@@ -9,18 +9,14 @@
'reg_type': 'ridge',
'read_dir': "resources/grn_models/d0_hvgs",
'write_dir': "resources/results/scores",
- 'methods': [ 'collectri', 'negative_control', 'positive_control', 'pearson_corr', 'pearson_causal', 'portia', 'ppcor', 'genie3', 'grnboost2', 'scenic', 'scglue', 'celloracle'],
- # 'layers': ['lognorm', 'pearson', 'seurat_lognorm', 'seurat_pearson', 'scgen_lognorm', 'scgen_pearson'],
- 'layers': ['seurat_lognorm', 'seurat_pearson'],
-
- # 'layers': ['scgen_pearson'],
+ 'methods': [ 'collectri', 'negative_control', 'positive_control', 'pearson_corr', 'portia', 'ppcor', 'genie3', 'grnboost2', 'scenic', 'scglue', 'celloracle'],
+ 'layers': ['lognorm', 'pearson', 'seurat_lognorm', 'seurat_pearson', 'scgen_lognorm', 'scgen_pearson'],
"perturbation_data": "resources/grn-benchmark/perturbation_data.h5ad",
"tf_all": "resources/prior/tf_all.csv",
"max_n_links": 50000,
"apply_tf": "true",
'subsample': -2,
- 'num_workers': 4,
'verbose': 1,
'binarize': True,
'num_workers': 20,
diff --git a/src/robustness_analysis/script_all.py b/src/robustness_analysis/script_all.py
index 71071af11..610f94c0c 100644
--- a/src/robustness_analysis/script_all.py
+++ b/src/robustness_analysis/script_all.py
@@ -11,7 +11,7 @@
'write_dir': "resources/results/robustness_analysis",
'degrees': [0, 10, 20, 50, 100],
'noise_types': ["net", "sign"],
- 'methods': [ 'collectri', 'negative_control', 'positive_control', 'pearson_corr', 'pearson_causal', 'portia', 'ppcor', 'genie3', 'grnboost2', 'scenic', 'scglue', 'celloracle'],
+ 'methods': [ 'collectri', 'negative_control', 'positive_control', 'pearson_corr', 'portia', 'ppcor', 'genie3', 'grnboost2', 'scenic', 'scglue', 'celloracle'],
"perturbation_data": "resources/grn-benchmark/perturbation_data.h5ad",