diff --git a/Dockerfile b/Dockerfile index bd1733a..b0bd3f8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -37,37 +37,6 @@ RUN pip3 install --upgrade pip RUN pip3 install -r /opt/requirements.txt RUN pip3 install bgzip - -# Install R -RUN apt-get update -RUN apt install -y --no-install-recommends software-properties-common dirmngr -# Add the keys -RUN apt install wget -RUN wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc - -# add the R 4.0 repo from CRAN -- adjust 'focal' to 'groovy' or 'bionic' as needed -#RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 || \ -# apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 || \ -# apt-key adv --keyserver pgp.mit.edu --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 || \ -# apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 || \ -# apt-key adv --keyserver keyserver.pgp.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 -#RUN add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/" - -RUN add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/" -RUN add-apt-repository universe -RUN apt-get update - -RUN apt install -y r-base r-base-core - -# Install R libs -RUN R -e "install.packages('data.table',dependencies=TRUE, repos='http://cran.rstudio.com/')" -RUN R -e "install.packages('dplyr',dependencies=TRUE, repos='http://cran.rstudio.com/')" -RUN R -e "install.packages('ontologyIndex',dependencies=TRUE, repos='http://cran.rstudio.com/')" -RUN R -e "install.packages('ontologySimilarity',dependencies=TRUE, repos='http://cran.rstudio.com/')" -RUN R -e "install.packages('tidyverse',dependencies=TRUE, repos='http://cran.rstudio.com/')" - - - # Install bcftools RUN wget https://github.com/samtools/bcftools/releases/download/1.20/bcftools-1.20.tar.bz2 RUN mv bcftools-1.20.tar.bz2 /opt/bcftools-1.20.tar.bz2 diff --git a/Dockerfiles/r.Dockerfile b/Dockerfiles/r.Dockerfile new file mode 100644 index 0000000..a8598eb --- /dev/null +++ b/Dockerfiles/r.Dockerfile @@ -0,0 +1,5 @@ +FROM rocker/tidyverse + +# Install R libs +RUN R -e "install.packages('ontologyIndex',dependencies=TRUE, repos='http://cran.rstudio.com/')" +RUN R -e "install.packages('ontologySimilarity',dependencies=TRUE, repos='http://cran.rstudio.com/')" diff --git a/main.nf b/main.nf index bff316c..e4c0c0b 100644 --- a/main.nf +++ b/main.nf @@ -364,6 +364,8 @@ process GENESYM_TO_PHRANK { process HPO_SIM { + container 'zhandongliulab/aim-lite-r' + input: path hpo path omim_hgmd_phen @@ -514,28 +516,43 @@ process ANNOTATE_BY_MODULES { """ } -process JOIN_TIER_PHRANK { +process ANNOTATE_TIER { + container 'zhandongliulab/aim-lite-r' tag "${scores.simpleName}" input: path scores path phrank - path ref_annot_dir path ref_var_tier_dir - path ref_merge_expand_dir output: - path "${scores.simpleName}_scores.txt.gz", emit: compressed_scores path "${scores.simpleName}_Tier.v2.tsv", emit: tier script: """ mv $scores scores.csv VarTierDiseaseDBFalse.R ${params.ref_ver} + mv Tier.v2.tsv ${scores.simpleName}_Tier.v2.tsv + """ +} + +process JOIN_PHRANK { + tag "${scores.simpleName}" + + input: + path scores + path phrank + path ref_merge_expand_dir + + output: + path "${scores.simpleName}_scores.txt.gz", emit: compressed_scores + + script: + """ + mv $scores scores.csv generate_new_matrix_2.py ${params.run_id} ${params.ref_ver} mv scores.txt.gz ${scores.simpleName}_scores.txt.gz - mv Tier.v2.tsv ${scores.simpleName}_Tier.v2.tsv """ } @@ -712,19 +729,23 @@ workflow { NORMALIZE_VCF.out.vcf, ) - JOIN_TIER_PHRANK ( + ANNOTATE_TIER ( ANNOTATE_BY_MODULES.out.scores, PHRANK_SCORING.out, - file(params.ref_annot_dir), file(params.ref_var_tier_dir), + ) + + JOIN_PHRANK ( + ANNOTATE_BY_MODULES.out.scores, + PHRANK_SCORING.out, file(params.ref_merge_expand_dir) ) MERGE_SCORES_BY_CHROMOSOME( PHRANK_SCORING.out, - JOIN_TIER_PHRANK.out.tier.collect(), - JOIN_TIER_PHRANK.out.compressed_scores.collect(), + ANNOTATE_TIER.out.tier.collect(), + JOIN_PHRANK.out.compressed_scores.collect(), file(params.ref_annot_dir), file(params.ref_mod5_diffusion_dir), file(params.ref_merge_expand_dir)