Skip to content

Commit

Permalink
Release v1.1.0
Browse files Browse the repository at this point in the history
Major Updates and Enhancements
- Retrained CytoTRACE 2 Framework for enhanced potency prediction and cross-platform robustness.
- Expanded Ensemble Model: Now 19 models instead of 17.
- Introduced a Background Expression Matrix for improved regularization.
- Added Log2-adjusted representation to capture detailed transcriptomic signals.
- Modified KNN smoothing to use adaptive nearest neighbor smoothing.

Codebase and Distribution Updates
- Updated R and Python package codebases.
- Optimized for time and memory efficiency.
- Python package now available on PyPI (cytotrace2-py).
- Supports using preexisting UMAP embeddings when plotting.

Documentation and Guides
- Updated Vignettes and README with new information and FAQs.
  • Loading branch information
savagyan00 committed Jan 9, 2025
1 parent 6bc9c86 commit c70f909
Show file tree
Hide file tree
Showing 155 changed files with 8,127 additions and 6,568 deletions.
Binary file modified .DS_Store
Binary file not shown.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Ignore all hidden files and directories
.*
.DS_Store
# But do not ignore the .gitignore file itself
!.gitignore
203 changes: 137 additions & 66 deletions README.md

Large diffs are not rendered by default.

2,851 changes: 2,851 additions & 0 deletions Vignette1_CytoTRACE2_results.csv

Large diffs are not rendered by default.

2,281 changes: 0 additions & 2,281 deletions Vignette1_results.csv

This file was deleted.

Binary file not shown.
165 changes: 92 additions & 73 deletions cytotrace2_python/README.md

Large diffs are not rendered by default.

2,851 changes: 2,851 additions & 0 deletions cytotrace2_python/Vignette1_cytotrace2_results.txt

Large diffs are not rendered by default.

22 changes: 9 additions & 13 deletions cytotrace2_python/cytotrace2_py/common/argument_parser.py
Original file line number Diff line number Diff line change
@@ -1,46 +1,42 @@
import argparse


def argument_parser():
parser = argparse.ArgumentParser(description="CytoTRACE 2 is a computational method for "
"predicting cellular potency categories and "
"absolute developmental potential from "
"single-cell RNA-sequencing data.")
"single-cell RNA-sequencing data. For more information, please see "
"https://github.com/digitalcytometry/cytotrace2/tree/main/cytotrace2_python.")

# Required arguments
required = parser.add_argument_group('Required arguments')
required.add_argument("-f", "--input-path", help="Path to input scRNA-seq data", type=str,
required.add_argument("-f", "--input-path", help="Path to input scRNA-seq data. Data should be raw counts or CPM/TPM, and must not be log2-adjusted. File should be a tab-delimited .txt file with genes as rows and cells as columns. The first row must contain the single cell IDs and the first column must contain the gene names.", type=str,
default=None, required=True)


# Options

parser.add_argument("-a", "--annotation-path", type=str, default="",
help="Path to input annotations")
help="Path to input annotations. File should be a tab-delimited .txt file containing cell IDs in the first column and cell annotations in the second. Columns must have a header.")

parser.add_argument("-sp", "--species", default="mouse",
help="Species name from which the gene names for the input data come, default 'mouse'",
choices=["mouse", "human"])

parser.add_argument("-fm", "--full-model", help="Use full ensemble of 17 models rather than default reduced ensemble of 5 most predictive models", action="store_true")

parser.add_argument("-bs", "--batch-size", help="Integer or NULL, indicating the number of cells to subsample for the pipeline steps. No subsampling if NULL. (default is 10000, recommended value for input data size > 10K cells)", type=int, default=10000)
parser.add_argument("-bs", "--batch-size", help="Integer or NULL, indicating the number of cells to process at once for the pipeline steps, including subsampling for the KNN smoothing. No subsampling if NULL. (default is 10000, recommended value for input data size > 10K cells)", type=int, default=10000)

parser.add_argument("-sbs", "--smooth-batch-size", help="Integer or NULL, indicating the number of cells to subsample further for the smoothing step of the pipeline. No subsampling if NULL. (default is 1000, recommended value for input data size > 1K cells)", type=int, default=1000)
parser.add_argument("-sbs", "--smooth-batch-size", help="Integer or NULL, indicating the number of cells to subsample further for the smoothing by diffusion step of the pipeline. No subsampling if NULL. (default is 1000, recommended value for input data size > 1K cells)", type=int, default=1000)

parser.add_argument("-dp", "--disable-parallelization", help="Disable parallelization for CytoTRACE 2", action="store_true")
parser.add_argument("-dpa", "--disable-parallelization", help="Disable parallelization for CytoTRACE 2", action="store_true")

parser.add_argument("-mc", "--max-cores", help="Integer, indicating the maximum number of CPU cores to use for parallelization", type=int, default=None)

parser.add_argument("-mpc", "--max-pcs", help="Integer, indicating the maximum number of principal components to use in the smoothing by kNN step (default is 200)", type=int, default=200)

parser.add_argument("-r", "--seed", help="Integer, specifying the seed for reproducibility in random processes (default is 14).", type=int, default=14)

parser.add_argument("-o", "--output-dir", type=str, default="cytotrace2_results",
help="Directory path for output predictions and intermediate files (default is 'cytotrace2_results')")

parser.add_argument("-dpl", "--disable-plotting", help="Disable output plotting for CytoTRACE 2", action="store_true")


parser.add_argument("-dv", "--disable-verbose", help="Disable verbose mode for CytoTRACE 2", action="store_true")

arguments = parser.parse_args()

Expand Down
Loading

0 comments on commit c70f909

Please sign in to comment.