Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
35bc11f
added model interpretability with SHAP/LIME
Nov 13, 2024
e21b538
model interpretability
Nov 13, 2024
cad6f81
Merge branch 'main' of github.com:jjia1/AI_MARRVEL
Nov 13, 2024
fedaab9
removed .ipynb checkpoints
Nov 13, 2024
d200244
initialize hgmd branch
SpicyChicken6 Nov 13, 2024
f205a2f
upload scripts for generating hgmd data files for merge_expand folder…
Nov 13, 2024
e26ed4b
Update Scikit Learn to >=1.3.0 and Stop Using predict_new/
jylee-bcm Nov 14, 2024
80bb19e
fix a file path issue
Nov 14, 2024
6007576
Merge pull request #101 from LiuzLab/update_sklearn_and_stop_using_pr…
jylee-bcm Nov 14, 2024
29a0d3f
Merge pull request #100 from LiuzLab/hgmd_data_generation
jylee-bcm Nov 14, 2024
a7913d1
added ModelInterpreter
Nov 14, 2024
cf3e403
addressed review in PR #103
Nov 15, 2024
652d7cd
Merge branch 'develop' into main
jylee-bcm Nov 15, 2024
eeb1baa
Merge pull request #103 from jjia1/main
jylee-bcm Nov 15, 2024
55b8d02
Disable LIME analysis as it takes too long time
jylee-bcm Nov 18, 2024
2f99496
Merge pull request #105 from LiuzLab/disable-lime
jylee-bcm Nov 18, 2024
c3b4bcf
Validate VCF First Before Preprocessing
jylee-bcm Nov 20, 2024
9983265
Merge pull request #106 from LiuzLab/vcfvalidator
hyunhwan-bcm Nov 20, 2024
539a79c
Separate R Dockerfiles
jylee-bcm Nov 21, 2024
e6de2c1
Remove a line
jylee-bcm Nov 21, 2024
0f62117
Remove R Installation from main Dockerfile
jylee-bcm Nov 21, 2024
42cd314
Use docker image from docker hub
jylee-bcm Nov 21, 2024
5e37e29
Merge pull request #107 from LiuzLab/dockerseparation
jylee-bcm Nov 21, 2024
4fb7f87
Add --input_variant parameter for handling single variant
jylee-bcm Dec 18, 2024
fe2ea65
Move some dependent params logics from config to main.nf
jylee-bcm Dec 18, 2024
ce6b975
Set version to 1.1
jylee-bcm Dec 18, 2024
91d4879
fix dockerfile slightly
jylee-bcm Dec 18, 2024
0f4a4f2
Add outdir as necessary input
jylee-bcm Dec 18, 2024
75f7ca1
Merge pull request #112 from LiuzLab/onevar
jylee-bcm Dec 18, 2024
7f05415
remove proxy setting
jylee-bcm Dec 18, 2024
c33fd8d
Merge pull request #113 from LiuzLab/removeproxy
jylee-bcm Dec 18, 2024
8d435e6
Merge pull request #115 from LiuzLab/gri_filter
jylee-bcm Dec 18, 2024
b1417d3
Use vcf.gz for gnomad grch38 3.1.2
jylee-bcm Jan 27, 2025
bbbf716
Rebranch the trio branch from develop branch
jylee-bcm Apr 3, 2025
35ba050
Enable Trio pipeline with --input_ped argument
jylee-bcm Apr 4, 2025
8e1c5fd
trim trailing spaces
jylee-bcm Apr 4, 2025
9c740f9
Use the word of prediction for run_final result
jylee-bcm Apr 4, 2025
79211f8
Create oldpython.Dockerfile to run old sklearn models
jylee-bcm Apr 4, 2025
8f86087
use oldpython docker container for old models
jylee-bcm Apr 4, 2025
25a9551
Use slimmer dockerfile for oldpython
jylee-bcm Apr 4, 2025
8cc6712
Build reference index on the top main
jylee-bcm Apr 4, 2025
1a58dc3
use non slim version of oldpython to support ps for nextflow
jylee-bcm Apr 4, 2025
d7e7d44
Add profiles and manifest
jylee-bcm Apr 4, 2025
d55c357
Add debug profile
jylee-bcm Apr 4, 2025
c3fa65a
fix minor
jylee-bcm Apr 4, 2025
3486837
Use nf core schema for validation and help message
jylee-bcm Apr 4, 2025
da12f2b
Minimum setting for nf-core pipelines lint
jylee-bcm Apr 4, 2025
b4d6624
change nf schema json id
jylee-bcm Apr 4, 2025
409e331
Fix few of linting error
jylee-bcm Apr 4, 2025
d19ce3b
Make it pass all lints
jylee-bcm Apr 8, 2025
61a2710
add precommit config
jylee-bcm Apr 8, 2025
7f5b7d5
Add workflow actions
jylee-bcm Apr 8, 2025
ecb8c4e
Trigger lint for all branch push
jylee-bcm Apr 8, 2025
50cdc60
pass the pre-commit hooks
jylee-bcm Apr 8, 2025
02c58b5
remove duplicated entry
jylee-bcm Apr 8, 2025
1e4185c
show the version to 1.1.0 on the readme badge
jylee-bcm Apr 8, 2025
491e06c
revive docker enabled = true for the default setting
jylee-bcm Apr 8, 2025
1f47a72
fix minors
jylee-bcm Apr 8, 2025
88dfa84
use underscore instead of hyphen for input_variant
jylee-bcm Apr 8, 2025
58204ba
fix minor mistake
jylee-bcm Apr 8, 2025
7c09afe
fix minor mistake
jylee-bcm Apr 8, 2025
6587761
Do Singleton Preprocess for Trio and Remove sorted gene to sym
jylee-bcm Apr 9, 2025
896512e
Merge branch 'trio' into nflint
jylee-bcm Apr 9, 2025
cd50e91
Merge pull request #10 from LiuzLab/trio
hyunhwan-bcm Apr 9, 2025
6753f94
remove template part cuz it is not necessary
jylee-bcm Apr 10, 2025
e2b0859
Merge pull request #12 from LiuzLab/nflint
jylee-bcm Apr 10, 2025
1e93570
Use empty file instead of dev null
jylee-bcm Apr 16, 2025
9e3e1a6
updated the exon filter generator to work with hgmd2024 data
Apr 24, 2025
9cf9564
fix(NORMALIZE_VCF): handle Unicode file format
arine May 8, 2025
61dd4cd
Merge pull request #21 from LiuzLab/fix/file-format
arine May 8, 2025
6d21a68
Add wildcard for work*and out* in .gitignore
jylee-bcm Apr 25, 2025
c82af4b
Accept input_phenopacket
jylee-bcm May 10, 2025
386bbf4
Exclude phenotypes which are marked to be excluded for phenopacket fo…
jylee-bcm May 16, 2025
f4e2708
fix minor
jylee-bcm May 16, 2025
29c611d
Accept storedir parameter
jylee-bcm May 20, 2025
9e5a873
Minor Fix. Confirmed it's working
jylee-bcm May 20, 2025
f2f108f
Use Original Variant ID for Row Name
jylee-bcm May 22, 2025
c381522
Merge branch 'develop' into 16-accept-a-parameter-of-storedir
hyunhwan-bcm May 23, 2025
32f4235
Merge pull request #22 from LiuzLab/input_phenopacket
hyunhwan-bcm May 23, 2025
6043742
Merge branch 'develop' into 16-accept-a-parameter-of-storedir
hyunhwan-bcm May 23, 2025
168f416
Merge pull request #23 from LiuzLab/16-accept-a-parameter-of-storedir
hyunhwan-bcm May 23, 2025
baa1ab2
Merge pull request #26 from LiuzLab/origidtorowname
jylee-bcm May 23, 2025
4642d27
Minor Fix
jylee-bcm May 23, 2025
29fc079
Fix Bug Issue #18
jylee-bcm May 23, 2025
3eae3b4
Publish manifest.json including version information
jylee-bcm May 23, 2025
9bcd6ff
Merge pull request #27 from LiuzLab/18-vcf_pre_process_trio-requires-…
jylee-bcm Jun 3, 2025
950beb2
Revert "18 vcf pre process trio requires pedigree file to have proban…
jylee-bcm Jun 4, 2025
c23e119
Merge pull request #30 from LiuzLab/revert-27-18-vcf_pre_process_trio…
jylee-bcm Jun 4, 2025
e7f650e
Revert "Revert "18 vcf pre process trio requires pedigree file to hav…
jylee-bcm Jun 4, 2025
f55d84c
Merge pull request #31 from LiuzLab/revert-30-revert-27-18-vcf_pre_pr…
jylee-bcm Jun 11, 2025
9b5875d
Merge pull request #28 from LiuzLab/generatemanifest
jylee-bcm Jun 11, 2025
f7c8ab9
Ignore Low Impact Transcripts
jylee-bcm Jun 16, 2025
591bc56
Save git hash and data_dependencies hash in result directory.
ZaahidShaik Jun 26, 2025
dae10b9
Merge pull request #46 from LiuzLab/manifest
jylee-bcm Jun 26, 2025
ac86eda
Add input parameter to enable impact filter.
ZaahidShaik Jun 27, 2025
640e905
Make it boolean and Rename to transcriptDf
jylee-bcm Jun 27, 2025
589ff28
Apply lenient validation to accept integer run_id
jylee-bcm Jun 27, 2025
615a18b
Merge pull request #47 from LiuzLab/lenientvalidation
jylee-bcm Jun 27, 2025
17997e3
Merge pull request #35 from LiuzLab/ignore-low-impact-transcripts
jylee-bcm Jul 3, 2025
3e8cee5
Remove *_integrated.csv
ZaahidShaik Jul 7, 2025
cb041c5
Merge pull request #48 from LiuzLab/remove_integrated_file
jylee-bcm Jul 7, 2025
2a9774b
Substitute extensive params with PREPARE_DATA subworkflow
jylee-bcm Jul 16, 2025
dddb716
Ignore code in utils for prettier
jylee-bcm Jul 16, 2025
e778389
Use shorten form for using output file of VCF_PRE_PROCESS
jylee-bcm Jul 21, 2025
31c8990
Add more details for not implemented code
jylee-bcm Jul 21, 2025
ec1c889
Merge pull request #52 from LiuzLab/storedata
hyunhwan-bcm Jul 21, 2025
cc3db94
Bump the version to 1.1
jylee-bcm Jul 31, 2025
148c384
Fix a bug failing to handle empty optional inputs
jylee-bcm Jul 31, 2025
cb5a279
Remove integrated file from the documents
jylee-bcm Jul 31, 2025
ff0df62
Merge branch 'main' into release/1.1
jylee-bcm Aug 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 0 additions & 25 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

42 changes: 42 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Bug report
description: Report something that is broken or incorrect
labels: bug
body:
- type: textarea
id: description
attributes:
label: Description of the bug
description: A clear and concise description of what the bug is.
validations:
required: true

- type: textarea
id: command_used
attributes:
label: Command used and terminal output
description: Steps to reproduce the behaviour. Please paste the command you used to launch the pipeline and the output from your terminal.
render: console
placeholder: |
$ nextflow run ...

Some output where something broke

- type: textarea
id: files
attributes:
label: Relevant files
description: |
Please drag and drop the relevant files here. Create a `.zip` archive if the extension is not allowed.
Your verbose log file `.nextflow.log` is often useful _(this is a hidden file in the directory where you launched the pipeline)_ as well as custom Nextflow configuration files.

- type: textarea
id: system
attributes:
label: System information
description: |
* Nextflow version _(eg. 23.04.0)_
* Hardware _(eg. HPC, Desktop, Cloud)_
* Executor _(eg. slurm, local, awsbatch)_
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_
* OS _(eg. CentOS Linux, macOS, Linux Mint)_
* Version of LiuzLab/ai_marrvel _(eg. 1.1, 1.5, 1.8.2)_
84 changes: 84 additions & 0 deletions .github/workflows/nf-core-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: nf-core linting

on:
push:
branches:
# - main
- "**"
pull_request:
branches:
- main
- develop

jobs:
pre-commit:
name: Run Pre-Commit Hooks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: "x64"

- name: Install pre-commit
run: pip install pre-commit

- name: Run pre-commit
run: pre-commit run --all-files

nf-core:
name: Run nf-core lint
runs-on: ubuntu-latest
strategy:
matrix:
NXF_VER:
- "23.10.1"

steps:
- name: Check out pipeline code
uses: actions/checkout@v4

- name: Install Nextflow
uses: nf-core/setup-nextflow@v2
with:
version: "${{ matrix.NXF_VER }}"

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: "x64"

- name: read .nf-core.yml
uses: pietrobolcato/action-read-yaml@1.1.0
id: read_yml
with:
config: ${{ github.workspace }}/.nf-core.yml

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install nf-core==${{ steps.read_yml.outputs['nf_core_version'] }}
- name: Run nf-core pipelines lint
if: ${{ github.base_ref != 'master' }}
env:
GITHUB_COMMENTS_URL: ${{ github.event.pull_request.comments_url }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_PR_COMMIT: ${{ github.event.pull_request.head.sha }}
run: nf-core -l lint_log.txt pipelines lint --dir ${GITHUB_WORKSPACE} --markdown lint_results.md

- name: Save PR number
if: ${{ always() }}
run: echo ${{ github.event.pull_request.number }} > PR_number.txt

- name: Upload linting log artifact
uses: actions/upload-artifact@v4
with:
name: nf-core-lint-logs
path: |
lint_log.txt
lint_results.md
PR_number.txt
2 changes: 0 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ jobs:
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}


- name: Install jq
run: sudo apt-get install jq

Expand Down Expand Up @@ -81,7 +80,6 @@ jobs:
aws sqs delete-queue --queue-url ${{ steps.step_queue.outputs.queue_url }}
echo "Queue deleted: ${{ steps.step_queue.outputs.queue_url }}"


- name: Close Pull Request on Failure
if: ${{ failure() }} && github.event_name == 'pull_request'
run: |
Expand Down
30 changes: 20 additions & 10 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,23 +1,33 @@
# General
**/__pycache__
**/.DS_Store
.vscode/
bcftools-1.9.tar.bz2
run/bedtools
.vscode/
.DS_Store
*/.DS_Store
test_data/
test_ref/
test_output/
**/.ipynb_checkpoints/
*.ipynb
.nfs*

# Nextflow Related
.nextflow*
.nextflow/
work/
out/
trace-*txt
report-*html
params.yaml
/.nextflow*
/.nextflow/
/work*/
/out*/
/store*/
/dag-*.html
/trace-*.txt
/report-*.html
/timeline-*.html
/params.yaml

# Ignore R history and session files
.Rhistory
.RData

# Ignore some files from model interpreter
*/model_interpreter/results
*/model_interpreter/templates
*/model_interpreter/main.nf
43 changes: 43 additions & 0 deletions .nf-core.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
repository_type: pipeline
nf_core_version: 3.2.0

lint:
pipeline_name_conventions: False # Ignore: Naming does not adhere to nf-core conventions: Contains uppercase letters
schema_lint: False # Ignore: Parameter input not found in schema
actions_awsfulltest: False
pipeline_todos: False
nextflow_config: False
multiqc_config: False
files_unchanged: False
files_exist:
- .gitattributes
- .editorconfig
- CHANGELOG.md
- CITATIONS.md
- CODE_OF_CONDUCT.md
- .github/.dockstore.yml
- .github/CONTRIBUTING.md
- .github/ISSUE_TEMPLATE/config.yml
- .github/ISSUE_TEMPLATE/feature_request.yml
- .github/PULL_REQUEST_TEMPLATE.md
- .github/workflows/awstest.yml
- .github/workflows/awsfulltest.yml
- .github/workflows/branch.yml
- .github/workflows/linting_comment.yml
- .github/workflows/linting.yml
- .github/workflows/ci.yml
- assets/multiqc_config.yml
- assets/email_template.html
- assets/email_template.txt
- assets/sendmail_template.txt
- assets/nf-core-AI_MARRVEL_logo_light.png
- conf/igenomes.config
- conf/igenomes_ignored.config
- conf/test.config
- conf/test_full.config
- docs/images/nf-core-AI_MARRVEL_logo_light.png
- docs/images/nf-core-AI_MARRVEL_logo_dark.png
- docs/output.md
- docs/README.md
- docs/usage.md
- ro-crate-metadata.json
13 changes: 13 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
repos:
- repo: https://github.com/pre-commit/mirrors-prettier
rev: "v3.1.0"
hooks:
- id: prettier
additional_dependencies:
- prettier@3.2.5

- repo: https://github.com/editorconfig-checker/editorconfig-checker.python
rev: "3.0.3"
hooks:
- id: editorconfig-checker
alias: ec
12 changes: 12 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
email_template.html
slackreport.json
.nextflow*
work/
data/
results/
.DS_Store
testing/
testing*
*.pyc
bin/
utils/
1 change: 1 addition & 0 deletions .prettierrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
printWidth: 120
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ python:
- requirements: docs/source/requirements.txt

sphinx:
configuration: docs/source/conf.py
configuration: docs/source/conf.py
63 changes: 5 additions & 58 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,18 +1,7 @@
# List of dependencies installed
# bcftools v1.9-1-deb_cv1
# ensemblorg/ensembl-vep:release_104.3
# python 2.7
# python 3.8.13
# R 4.2.1

# dc7a542b7e1f
#FROM ubuntu:18.04
FROM ensemblorg/ensembl-vep:release_104.3
USER root
ENV DEBIAN_FRONTEND noninteractive
FROM python:3.8

# Install dependencies
RUN apt-get update && apt-get install -y \
RUN apt update && apt install -y \
curl \
git \
build-essential \
Expand All @@ -22,54 +11,15 @@ RUN apt-get update && apt-get install -y \
libbz2-dev \
liblzma-dev \
tabix \
python2.7 \
python3.8 \
python3.8-dev \
python3.8-distutils \
python3-apt

RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
RUN python3.8 get-pip.py
jq

# Install python 3.8 dependencies
COPY requirements.txt /opt/requirements.txt
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 curl -OL 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
RUN tar -xf /opt/bcftools-1.20.tar.bz2 -C /opt/ && \
rm /opt/bcftools-1.20.tar.bz2 && \
Expand All @@ -80,9 +30,6 @@ RUN tar -xf /opt/bcftools-1.20.tar.bz2 -C /opt/ && \
rm -rf /opt/bcftools-1.20

# Install bedtools
RUN wget https://github.com/arq5x/bedtools2/releases/download/v2.30.0/bedtools.static.binary
RUN curl -OL https://github.com/arq5x/bedtools2/releases/download/v2.30.0/bedtools.static.binary
RUN mv bedtools.static.binary /run/bedtools
RUN chmod a+x /run/bedtools



5 changes: 5 additions & 0 deletions Dockerfiles/oldpython.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FROM python:3.8

RUN pip install scikit-learn==1.1.2
RUN pip install pandas

5 changes: 5 additions & 0 deletions Dockerfiles/r.Dockerfile
Original file line number Diff line number Diff line change
@@ -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/')"
Loading
Loading