diff --git a/snakemake_wrappers/compute_RPK/wrapper.py b/snakemake_wrappers/compute_RPK/wrapper.py new file mode 100644 index 0000000000000000000000000000000000000000..f3a4218121589a08554a5c1269066910402178da --- /dev/null +++ b/snakemake_wrappers/compute_RPK/wrapper.py @@ -0,0 +1,7 @@ +import pandas as pd + +counts_data = pd.read_table(snakemake.input.counts_data, index_col="gene") +feature_lengths = pd.read_table(snakemake.params.feature_lengths_file, index_col="gene") +common = counts_data.index.intersection(feature_lengths.index) +rpk = 1000 * counts_data.loc[common].div(feature_lengths.loc[common]["union_exon_len"], axis="index") +rpk.to_csv(snakemake.output.rpk_file, sep="\t") diff --git a/snakemake_wrappers/compute_TPM/wrapper.py b/snakemake_wrappers/compute_TPM/wrapper.py new file mode 100644 index 0000000000000000000000000000000000000000..f07c15ac6035e0be731d325e677cd8c1daf0b620 --- /dev/null +++ b/snakemake_wrappers/compute_TPM/wrapper.py @@ -0,0 +1,5 @@ +import pandas as pd + +rpk = pd.read_table(snakemake.input.rpk_file, index_col="gene") +tpm = 1000000 * rpk / rpk.sum() +tpm.to_csv(snakemake.output.tpm_file, sep="\t")