diff --git a/bin/seurat_preprocess_init.Rmd b/bin/seurat_preprocess_init.Rmd new file mode 100644 index 00000000..10688616 --- /dev/null +++ b/bin/seurat_preprocess_init.Rmd @@ -0,0 +1,114 @@ +--- +title: "scRNA Sample Processing" +output: + html_document: + toc: yes +editor_options: + chunk_output_type: console +params: + species: "hg38" + sampleid: "WB_Lysis_1" + h5: "./tests/test_dir/cellranger_counts/sample1/outs/filtered_feature_bc_matrix.h5" + qc_filtering: "miQC" + nCount_RNA_max: 500000 + nCount_RNA_min: 1000 + nFeature_RNA_max: 5000 + nFeature_RNA_min: 200 + percent_mt_max: 10 + percent_mt_min: 0 + doublet_finder: "DoubletFinder" + npcs: 30 +--- + +```{r, prep_args, message=FALSE} +# set up params +species <- params$species +sample_id <- params$sampleid +h5 <- params$h5 + +qc_filtering <- params$qc_filtering # manual, miqc, mads +nCount_RNA_max <- as.numeric(params$nCount_RNA_max) +nCount_RNA_min <- as.numeric(params$nCount_RNA_min) +nFeature_RNA_max <- as.numeric(params$nFeature_RNA_max) +nFeature_RNA_min <- as.numeric(params$nFeature_RNA_min) +percent_mt_max <- as.numeric(params$percent_mt_max) +percent_mt_min <- as.numeric(params$percent_mt_min) +doublet_finder <- params$doublet_finder +npcs_val <- as.numeric(params$npcs) +``` + +```{r, handle_pkg, message=FALSE} +if (!("SCOT" %in% installed.packages())){ + devtools::install_github("CCBR/SCOT", ref = "main" ) +} +library("SCOT") +``` + +```{r, pre-processing, message = FALSE, echo=FALSE, include =FALSE} +# read in data +rnaCounts <- Seurat::Read10X_h5(h5) + +#REMOVED CONDITION FOR TESTING, WHICH IS NOW IN NEXTFLOW ARGUMENTS +so_pre <- Seurat::CreateSeuratObject(counts = rnaCounts) + +so_pre <- SCOT::calc_prelim_stats(so = so_pre, sampleID = sample_id) + +#Violin plots to be moved to secondary visualization + +``` + +```{r QC} +#Use SCOT function for filtering conditions +so_pre +so_filt <- subset(so_pre, subset = nFeature_RNA > 200) + +so_filt <- SCOT::filter_cells(so_filt, method = qc_filtering) + +so_pre$keep <- "low_genes" +so_pre$keep[colnames(so_filt)] <- so_filt$keep + +so_filt <- subset(so_filt, subset = keep == "keep") +``` + +```{r normalization_and_clustering} +#Calculate s.genes and g2m.genes +#Normalize RNA +#Scale RNA +#Cell cycle scoring +#SCTransform +#PCA, UMAP, and initial clustering +so_filt <- SCOT::preprocess_sample( + so_in = so_filt, species = species, npcs_in = npcs_val +) +``` + +```{r cell_type_annotation} +so_filt <- SCOT::run_singleR_db(so_in = so_filt, species = species) +``` + +```{r doublet_finding} +if (doublet_finder %in% c("DoubletFinder", "scDblFinder","consensus","union")){ + so_filt <- SCOT::filter_doublets( + so_in = so_filt, doublet_finder_method = doublet_finder + ) +} + +so_pre$keep[setdiff(colnames(so_pre)[which(so_pre$keep=="keep")], colnames(so_filt))] <- "doublet_removed" +``` + +```{r process_unfiltered} +so_pre <- SCOT::preprocess_sample( + so_in = so_pre, species = species, npcs_in = npcs_val +) +``` + +```{r save_objects} +fpath_process <- paste0(sample_id, "_seurat_preprocess.rds") +saveRDS(so_filt, fpath_process) +fpath_prefilt <- paste0(sample_id, "_seurat_prefilter.rds") +saveRDS(so_pre, fpath_prefilt) +``` + +```{r print_session} +sessionInfo() +``` diff --git a/bin/seurat_preprocess_report.Rmd b/bin/seurat_preprocess_report.Rmd new file mode 100644 index 00000000..2942de08 --- /dev/null +++ b/bin/seurat_preprocess_report.Rmd @@ -0,0 +1,104 @@ +--- +title: "scRNA Sample Report" +output: + html_document: + toc: yes +editor_options: + chunk_output_type: console +params: + species: "hg38" + sampleid: "WB_Lysis_1" + h5: "./tests/test_dir/cellranger_counts/sample1/outs/filtered_feature_bc_matrix.h5" + preprocess_rds: "./tests/test_dir/process_sample/WB_Lysis_1_seurat_preprocess.rds" + prefilter_rds: "./tests/test_dir/process_sample/WB_Lysis_1_seurat_prefilter.rds" + qc_filtering: "miQC" + nCount_RNA_max: 500000 + nCount_RNA_min: 1000 + nFeature_RNA_max: 5000 + nFeature_RNA_min: 200 + percent_mt_max: 10 + percent_mt_min: 0 + doublet_finder: "DoubletFinder" + npcs: 30 +--- + + +```{r, prep_args, message=FALSE} +# set up params +species <- params$species +sample_id <- params$sampleid +h5 <- params$h5 +processed <- params$preprocess_rds +prefilter <- params$prefilter_rds +qc_filtering <- params$qc_filtering # manual, miqc, mads +nCount_RNA_max <- as.numeric(params$nCount_RNA_max) +nCount_RNA_min <- as.numeric(params$nCount_RNA_min) +nFeature_RNA_max <- as.numeric(params$nFeature_RNA_max) +nFeature_RNA_min <- as.numeric(params$nFeature_RNA_min) +percent_mt_max <- as.numeric(params$percent_mt_max) +percent_mt_min <- as.numeric(params$percent_mt_min) +doublet_finder <- params$doublet_finder +npcs_val <- as.numeric(params$npcs) +``` + +```{r, handle_pkg, message=FALSE} +if (!("SCOT" %in% installed.packages())){ + devtools::install_github("CCBR/SCOT", ref = "main" ) +} +library("SCOT") +if (!requireNamespace("Seurat", quietly = TRUE)) { + install.packages("Seurat") +} + +``` + +```{r load_objects, echo=FALSE, message=FALSE, warning=FALSE} +so_prefilter <- Seurat::readRDS(prefilter) +so_processed <- Seurat::readRDS(processed) + +n_prefilter <- ncol(so_prefilter) +n_processed <- ncol(so_processed) +``` + +## Filtering Summary +```{r summary_table} +#UPDATE TO INDICATE +summary_table <- data.frame( + Stage = c("Prefilter", "Processed"), + Cells = c(n_prefilter, n_processed) +) + +knitr::kable(summary_table, caption = "Cell counts before and after filtering") +``` + +## UMAP of Filtered Cells + +## Violin plots for QC metrics + +```{r violin_plots, echo=FALSE, message=FALSE, warning=FALSE} +qc_features <- c("nFeature_RNA", "nCount_RNA", "percent.mt") + +p_prefilter <- Seurat::VlnPlot( + so_prefilter, + features = qc_features, + ncol = 3, + pt.size = 0.1, + log = 10 +) + ggplot2::ggtitle("QC metrics before filtering") + +p_processed <- Seurat::VlnPlot( + so_processed, + features = qc_features, + ncol = 3, + pt.size = 0.1, + log = 10 +) + ggplot2::ggtitle("QC metrics after filtering") + +p_prefilter +p_processed +``` + + +```{r print_session} +sessionInfo() +``` diff --git a/codemeta.json b/codemeta.json index 94023ae8..26a7b1c2 100644 --- a/codemeta.json +++ b/codemeta.json @@ -59,10 +59,10 @@ } ], "codeRepository": "https://github.com/CCBR/SINCLAIR", - "datePublished": "2026-05-12", + "datePublished": "2026-05-13", "identifier": "https://doi.org/10.5281/zenodo.15283503", "license": "https://spdx.org/licenses/MIT", "name": "SINCLAIR: SINgle CelL AnalysIs Resource", "url": "https://ccbr.github.io/SINCLAIR", - "version": "v0.3.7" + "version": "v0.4.0" } diff --git a/conf/test_pbmc.config b/conf/test_pbmc.config index 8806be96..58b71bec 100644 --- a/conf/test_pbmc.config +++ b/conf/test_pbmc.config @@ -18,7 +18,7 @@ params { nFeature_RNA_min = 200 percent_mt_max = 30 percent_mt_min = 0 - run_doublet_finder = "Y" + doublet_finder = "DoubletFinder" // GEX seurat_resolution = "0.1,0.2,0.3,0.5,0.6,0.8,1" diff --git a/docs/params.md b/docs/params.md index 6ba3b860..f3db8f29 100644 --- a/docs/params.md +++ b/docs/params.md @@ -26,7 +26,7 @@ Define where the pipeline should find input data and save output data. | `nFeature_RNA_min` | | `integer` | 200 | | | | `percent_mt_max` | | `integer` | 10 | | | | `percent_mt_min` | | `integer` | 0 | | | -| `run_doublet_finder` | (accepted: `Y`\|`N`) | `string` | Y | | | +| `doublet_finder` | (accepted: `scDblFinder`\|`union`\|`consensus`) | `string` | DoubletFinder | | | | `seurat_resolution` | | `string` | 0.1,0.2,0.3,0.5,0.6,0.8,1 | | | | `npcs` | | `integer` | 50 | | | | `resolution_list` | | `string` | 0.1,0.2,0.3,0.5,0.6,0.8,1 | | | diff --git a/modules/local/seurat_preprocess.nf b/modules/local/seurat_preprocess.nf index af11ee6a..206bc238 100644 --- a/modules/local/seurat_preprocess.nf +++ b/modules/local/seurat_preprocess.nf @@ -14,14 +14,15 @@ process SEURAT_PREPROCESS { val(nFeature_RNA_min) val(percent_mt_max) val(percent_mt_min) - val(run_doublet_finder) + val(doublet_finder) val(npcs) path(rmd) - path(scRNA_functions) output: - tuple val(id), path ("*.rds") , emit:rds - tuple val(id), path ("*.html") , emit:logs + tuple val(id), path ("*.seurat_preprocess.rds"), emit:rds + tuple val(id), path ("*_seurat_prefilter.rds"), emit:prefilter + tuple val(id), path ("*seurat_preprocess.html"), emit:logs + // tuple val(id), path ("*seurat_preprocess_report.html"), emit:report script: def args = task.ext.args ?: '' @@ -33,23 +34,24 @@ process SEURAT_PREPROCESS { sampleid="$id", h5="$h5", qc_filtering="$qc_filtering", - nCount_RNA_max=$nCount_RNA_max, - nCount_RNA_min=$nCount_RNA_min, - nFeature_RNA_max=$nFeature_RNA_max, - nFeature_RNA_min=$nFeature_RNA_min, - percent_mt_max=$percent_mt_max, - percent_mt_min=$percent_mt_min, - run_doublet_finder="$run_doublet_finder", - npcs=$npcs, - scRNA_functions="$scRNA_functions", + + nCount_RNA_max="$nCount_RNA_max", + nCount_RNA_min="$nCount_RNA_min", + nFeature_RNA_max="$nFeature_RNA_max", + nFeature_RNA_min="$nFeature_RNA_min", + percent_mt_max="$percent_mt_max", + percent_mt_min="$percent_mt_min", + doublet_finder="$doublet_finder", + npcs="$npcs", celldex_cache="$celldex_path" ), - output_file = "${id}_seurat_preprocess.html" - ) + output_file = "${id}_seurat_preprocess.html")' + """ stub: """ + touch ${id}_seurat_prefilter.rds touch ${id}_seurat_preprocess.rds touch ${id}_seurat_preprocess.html """ diff --git a/nextflow.config b/nextflow.config index 35c79838..79b02629 100644 --- a/nextflow.config +++ b/nextflow.config @@ -17,14 +17,14 @@ params { vars_to_regress = null // other options include "percent.mt,nFeature_RNA,S.Score,G2M.Score,nCount_RNA" // seurat_preprocess.nf - qc_filtering = "miqc" //other options include "manual" (uses subsequent thresholds), "mads" (3 median absolute deviations) + qc_filtering = "miQC" //other options include "manual" (uses subsequent thresholds), "mads" (3 median absolute deviations) nCount_RNA_max = 500000 nCount_RNA_min = 1000 nFeature_RNA_max = 5000 nFeature_RNA_min = 200 percent_mt_max = 10 percent_mt_min = 0 - run_doublet_finder = "Y" + doublet_finder = "DoubletFinder" //other options are "scDblFinder", "union", and "consensus" // GEX seurat_resolution = "0.1,0.2,0.3,0.5,0.6,0.8,1" @@ -42,7 +42,8 @@ params { // Scripts script_functions = "${projectDir}/bin/scRNA_functions.R" - script_preprocess = "${projectDir}/bin/seurat_preprocess.Rmd" + script_preprocess = "${projectDir}/bin/seurat_preprocess_init.Rmd" + script_preprocess_report = "${projectDir}/bin/seurat_preprocess_report.Rmd" script_merge = "${projectDir}/bin/seurat_merge.Rmd" script_bc_harmony = "${projectDir}/bin/batch_correction_harmony.Rmd" script_bc_rpca = "${projectDir}/bin/batch_correction_rpca.Rmd" diff --git a/nextflow_schema.json b/nextflow_schema.json index c872e09e..5a82a0fb 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -89,10 +89,10 @@ "type": "integer", "default": 0 }, - "run_doublet_finder": { + "doublet_finder": { "type": "string", - "default": "Y", - "enum": ["Y", "N"] + "default": "DoubletFinder", + "enum": ["scDblFinder", "union", "consensus"] }, "seurat_resolution": { "type": "string", diff --git a/packageList.txt b/packageList.txt new file mode 100644 index 00000000..4157d1bf --- /dev/null +++ b/packageList.txt @@ -0,0 +1,480 @@ +x +abdiv abdiv +abind abind +ade4 ade4 +alabaster.base alabaster.base +alabaster.matrix alabaster.matrix +alabaster.ranges alabaster.ranges +alabaster.schemas alabaster.schemas +alabaster.se alabaster.se +annotate annotate +AnnotationDbi AnnotationDbi +AnnotationFilter AnnotationFilter +AnnotationHub AnnotationHub +ape ape +askpass askpass +assertthat assertthat +assorthead assorthead +AUCell AUCell +backports backports +bamsignals bamsignals +base64enc base64enc +basilisk basilisk +basilisk.utils basilisk.utils +batchelor batchelor +beachmat beachmat +beeswarm beeswarm +bezier bezier +BH BH +biglm biglm +Biobase Biobase +BiocFileCache BiocFileCache +BiocGenerics BiocGenerics +BiocIO BiocIO +BiocManager BiocManager +BiocNeighbors BiocNeighbors +BiocParallel BiocParallel +BiocSingular BiocSingular +BiocVersion BiocVersion +Biostrings Biostrings +biovizBase biovizBase +bit bit +bit64 bit64 +bitops bitops +blob blob +bluster bluster +brew brew +brio brio +broom broom +BSgenome BSgenome +bslib bslib +cachem cachem +Cairo Cairo +callr callr +car car +carData carData +caret caret +caTools caTools +celldex celldex +cffr cffr +checkmate checkmate +circlize circlize +classInt classInt +cli cli +clipr clipr +clock clock +clue clue +clusterSim clusterSim +collections collections +colorspace colorspace +commonmark commonmark +ComplexHeatmap ComplexHeatmap +coop coop +corpcor corpcor +corrplot corrplot +countsplit countsplit +cowplot cowplot +cpp11 cpp11 +crayon crayon +credentials credentials +crosstalk crosstalk +curl curl +cyclocomp cyclocomp +data.table data.table +DBI DBI +dbplyr dbplyr +DelayedArray DelayedArray +DelayedMatrixStats DelayedMatrixStats +deldir deldir +Deriv Deriv +desc desc +devtools devtools +diagram diagram +dichromat dichromat +diffobj diffobj +digest digest +dir.expiry dir.expiry +distributional distributional +djvdj djvdj +doBy doBy +doParallel doParallel +dotCall64 dotCall64 +DoubletFinder DoubletFinder +downlit downlit +dplyr dplyr +dqrng dqrng +DropletUtils DropletUtils +DT DT +e1071 e1071 +easy.utils easy.utils +edgeR edgeR +ellipsis ellipsis +ensembldb ensembldb +evaluate evaluate +ExperimentHub ExperimentHub +fansi fansi +farver farver +fastDummies fastDummies +fastmap fastmap +fastmatch fastmatch +fields fields +filelock filelock +fitdistrplus fitdistrplus +FNN FNN +fontawesome fontawesome +foreach foreach +formatR formatR +Formula Formula +fs fs +furrr furrr +futile.logger futile.logger +futile.options futile.options +future future +future.apply future.apply +gamlss gamlss +gamlss.data gamlss.data +gamlss.dist gamlss.dist +generics generics +GenomeInfoDb GenomeInfoDb +GenomeInfoDbData GenomeInfoDbData +GenomicAlignments GenomicAlignments +GenomicFeatures GenomicFeatures +GenomicRanges GenomicRanges +gert gert +GetoptLong GetoptLong +ggbeeswarm ggbeeswarm +ggdist ggdist +ggforce ggforce +ggplot2 ggplot2 +ggpubr ggpubr +ggrastr ggrastr +ggrepel ggrepel +ggridges ggridges +ggsci ggsci +ggsignif ggsignif +ggtrace ggtrace +gh gh +gitcreds gitcreds +glmGamPoi glmGamPoi +glmnet glmnet +GlobalOptions GlobalOptions +globals globals +glue glue +goftest goftest +gower gower +gplots gplots +graph graph +gridExtra gridExtra +grr grr +GSEABase GSEABase +gtable gtable +gtools gtools +gypsum gypsum +hardhat hardhat +harmony harmony +HDF5Array HDF5Array +hdf5r hdf5r +hdf5r.Extra hdf5r.Extra +here here +hexbin hexbin +HighFive HighFive +highr highr +Hmisc Hmisc +hms hms +htmlTable htmlTable +htmltools htmltools +htmlwidgets htmlwidgets +httpuv httpuv +httr httr +httr2 httr2 +ica ica +ifnb.SeuratData ifnb.SeuratData +igraph igraph +ini ini +ipred ipred +IRanges IRanges +irlba irlba +isoband isoband +iterators iterators +jquerylib jquerylib +jsonlite jsonlite +jsonvalidate jsonvalidate +karyoploteR karyoploteR +kde1d kde1d +KEGGREST KEGGREST +kernlab kernlab +knitr knitr +knockoff knockoff +labeling labeling +lambda.r lambda.r +lamW lamW +languageserver languageserver +later later +lava lava +lazyeval lazyeval +leiden leiden +leidenAlg leidenAlg +leidenbase leidenbase +lifecycle lifecycle +limma limma +lintr lintr +listenv listenv +lme4 lme4 +lmtest lmtest +locfit locfit +lubridate lubridate +magrittr magrittr +maps maps +MatrixGenerics MatrixGenerics +MatrixModels MatrixModels +matrixStats matrixStats +mclust mclust +memoise memoise +metapod metapod +microbenchmark microbenchmark +mime mime +miniUI miniUI +minqa minqa +mixtools mixtools +ModelMetrics ModelMetrics +modelr modelr +monocle3 monocle3 +munsell munsell +mvtnorm mvtnorm +nloptr nloptr +numDeriv numDeriv +ontologyIndex ontologyIndex +ontologyPlot ontologyPlot +ontoProc ontoProc +openssl openssl +org.Hs.eg.db org.Hs.eg.db +org.Mm.eg.db org.Mm.eg.db +Orthology.eg.db Orthology.eg.db +paintmap paintmap +pak pak +parallelly parallelly +patchwork patchwork +pbapply pbapply +pbkrtest pbkrtest +pbmcapply pbmcapply +pheatmap pheatmap +pillar pillar +pixmap pixmap +pkgbuild pkgbuild +pkgconfig pkgconfig +pkgdown pkgdown +pkgload pkgload +plogr plogr +plotly plotly +plyr plyr +png png +polyclip polyclip +polynom polynom +praise praise +presto presto +prettyunits prettyunits +pROC pROC +processx processx +prodlim prodlim +profvis profvis +progress progress +progressr progressr +promises promises +ProtGenerics ProtGenerics +proxy proxy +ps ps +pscl pscl +purrr purrr +quadprog quadprog +quantreg quantreg +R.cache R.cache +R.methodsS3 R.methodsS3 +R.oo R.oo +R.utils R.utils +R6 R6 +ragg ragg +randtoolbox randtoolbox +RANN RANN +rappdirs rappdirs +rbibutils rbibutils +rcmdcheck rcmdcheck +RColorBrewer RColorBrewer +Rcpp Rcpp +RcppAnnoy RcppAnnoy +RcppArmadillo RcppArmadillo +RcppEigen RcppEigen +RcppHNSW RcppHNSW +RcppML RcppML +RcppParallel RcppParallel +RcppPlanc RcppPlanc +RcppProgress RcppProgress +RcppThread RcppThread +RcppTOML RcppTOML +RCurl RCurl +Rdpack Rdpack +Rdsdp Rdsdp +readr readr +recall recall +recipes recipes +reformulas reformulas +regioneR regioneR +remotes remotes +reshape2 reshape2 +ResidualMatrix ResidualMatrix +restfulr restfulr +reticulate reticulate +rex rex +Rgraphviz Rgraphviz +rhdf5 rhdf5 +rhdf5filters rhdf5filters +Rhdf5lib Rhdf5lib +RhpcBLASctl RhpcBLASctl +Rhtslib Rhtslib +rjson rjson +rlang rlang +rliger rliger +rmarkdown rmarkdown +rngWELL rngWELL +ROCR ROCR +roxygen2 roxygen2 +rprojroot rprojroot +rsample rsample +Rsamtools Rsamtools +RSpectra RSpectra +RSQLite RSQLite +rstatix rstatix +rstudioapi rstudioapi +rsvd rsvd +rtracklayer rtracklayer +Rtsne Rtsne +rversions rversions +rvinecopulib rvinecopulib +s2 s2 +S4Arrays S4Arrays +S4Vectors S4Vectors +sass sass +ScaledMatrix ScaledMatrix +scales scales +scater scater +scattermore scattermore +sccore sccore +scDblFinder scDblFinder +scDesign3 scDesign3 +SCOT SCOT +scran scran +sctransform sctransform +scuttle scuttle +segmented segmented +sessioninfo sessioninfo +Seurat Seurat +SeuratData SeuratData +SeuratObject SeuratObject +SeuratWrappers SeuratWrappers +sf sf +shape shape +shiny shiny +SingleCellExperiment SingleCellExperiment +SingleR SingleR +sitmo sitmo +slam slam +slider slider +snow snow +sourcetools sourcetools +sp sp +spam spam +SparseArray SparseArray +SparseM SparseM +sparseMatrixStats sparseMatrixStats +sparseMVN sparseMVN +sparsevctrs sparsevctrs +spatstat.data spatstat.data +spatstat.explore spatstat.explore +spatstat.geom spatstat.geom +spatstat.random spatstat.random +spatstat.sparse spatstat.sparse +spatstat.univar spatstat.univar +spatstat.utils spatstat.utils +spData spData +spdep spdep +speedglm speedglm +SQUAREM SQUAREM +statmod statmod +stringi stringi +stringr stringr +styler styler +SummarizedExperiment SummarizedExperiment +sys sys +systemfonts systemfonts +tensor tensor +terra terra +testthat testthat +textshaping textshaping +tibble tibble +tidyr tidyr +tidyselect tidyselect +timechange timechange +timeDate timeDate +tinytex tinytex +tweenr tweenr +tzdb tzdb +UCSC.utils UCSC.utils +umap umap +units units +urlchecker urlchecker +usethis usethis +utf8 utf8 +uwot uwot +V8 V8 +VariantAnnotation VariantAnnotation +vctrs vctrs +vipor vipor +viridis viridis +viridisLite viridisLite +vroom vroom +waldo waldo +warp warp +wdm wdm +whisker whisker +withr withr +wk wk +xfun xfun +xgboost xgboost +XML XML +xml2 xml2 +xmlparsedata xmlparsedata +xopen xopen +xtable xtable +XVector XVector +yaml yaml +zip zip +zlibbioc zlibbioc +zoo zoo +base base +boot boot +class class +cluster cluster +codetools codetools +compiler compiler +datasets datasets +foreign foreign +graphics graphics +grDevices grDevices +grid grid +KernSmooth KernSmooth +lattice lattice +MASS MASS +Matrix Matrix +methods methods +mgcv mgcv +nlme nlme +nnet nnet +parallel parallel +rpart rpart +spatial spatial +splines splines +stats stats +stats4 stats4 +survival survival +tcltk tcltk +tools tools +utils utils diff --git a/tests/test_dir/process_sample/WB_Lysis_1_seurat_prefilter.rds b/tests/test_dir/process_sample/WB_Lysis_1_seurat_prefilter.rds new file mode 100644 index 00000000..1b494f4f Binary files /dev/null and b/tests/test_dir/process_sample/WB_Lysis_1_seurat_prefilter.rds differ diff --git a/tests/test_dir/process_sample/WB_Lysis_1_seurat_preprocess.rds b/tests/test_dir/process_sample/WB_Lysis_1_seurat_preprocess.rds new file mode 100644 index 00000000..473b2554 Binary files /dev/null and b/tests/test_dir/process_sample/WB_Lysis_1_seurat_preprocess.rds differ diff --git a/workflows/gex.nf b/workflows/gex.nf index 7085f233..7c65ee74 100644 --- a/workflows/gex.nf +++ b/workflows/gex.nf @@ -57,10 +57,13 @@ workflow GEX_EXQC { params.nFeature_RNA_min, params.percent_mt_max, params.percent_mt_min, - params.run_doublet_finder, + params.doublet_finder, params.npcs, - params.script_preprocess, - params.script_functions +// commented for testing params.Rlib_dir, +// commented for testing params.Rpkg, + params.script_preprocess //remember to add the comma after this for adding the preprocess report +// commented for testing params.script_functions +// commented as spaceholder params.script_preprocess_report ) // creates metadata