Package: sceptic
ScepticInstallation|Enviroment|Example|Input|Output|Parameter|Citation|ContactSceptic can perform pseudotime analysis on various types of single-cell/single-nucleus data. The model takes as input a collection of single-cell/single-nucleus data and then learns the relationship between the observed data and the associated time stamps, and finally uses the trained model to assign to each cell a real-valued pseudotime. Ideally, the pseudotimes assigned by Sceptic reflect each cell's progression along a notion of time---developmental, cell cycle, disease progression, aging---that is appropriate to the given data. Ideally, the pseudotimes assigned by Sceptic reflect each cell's progression along a notion of time---developmental, cell cycle, disease progression, aging---that is appropriate to the given data.InstallationSceptic software is available on the Python package index (PyPI), latest version 0.0.3. To install it using pip, simply type:$pipinstallscepticEnviromentSceptic is associated with the following packages.python >= 3.7.7numpy >= 1.19.5pandas >= 1.3.5sklearn >= 1.0.2Examples (python script)We downloaded the processedscGEMdataset from UnionCom’s GitHub page.$pythontest/scGEM/scGEM.pyThe script will generate 4 outputs from Sceptic described in the section above and save it at: test/scGEM/.Parameters ofScepticThe list of parameters is given below:kernel: The kernel function for sceptic SVM classfier (default=('linear', 'rbf')). Sklearn supports four kinds ofkernels: linear, polynomial, rbf, sigmoid.C: The C parameter for rbf kernel (default=[0.1, 1, 10]). The C parameter trades off correct classification of training examples against maximization of the decision function’s margin. See more detailshere.eFold: # of folds for external cross-validation (default=5).iFold: # of folds for internal cross-validation (default=4).InputIn case the user is providing the input data:data_concat: the input cell by measurement matrix. (# of cells by # of measurements)label: processed cell time label. (# of cells by 1)label_list: unique list of possible cell time labels. (# of time points by 1)parameters: Sceptic parameter dictionary. (default={'kernel': ('linear', 'rbf'), 'C': [0.1, 1, 10]}
)OutputWhen one uses sceptic.run_sceptic_and_evaluate function, several outputs are generated:cm: the confusion matrix for Sceptic's nested cross-validation. (# of time_points by # of time points)label_predicted: Sceptic's predicted discrete label for each cell. (# of cells by 1)pseudotime: Sceptic's predicted pseudotime (continuous) for each cell. (# of cells by 1)sceptic_prob: the class-proabilities for each cell. (# of cells by # of time points)ContactIn case you have questions, reach out togangliuw@uw.edu.CitationPseudotime analysis for time-series single-cell sequencing and imaging data (to be updated)If you have found our work useful, please consider citing us:@article{li2023pseudotime,
  title={Pseudotime analysis for time-series single-cell sequencing and imaging data},
  author={Gang Li, Hyeon-Jin Kim, Sriram Pendyala, Ran Zhang, Christine M. Disteche, Jean-Philippe Vert, Xinxian Deng, Doug Fowler, and William Stafford Noble},
  doi = {10.1101/2023.11.03.565575},	
  url = {https://doi.org/10.1101%2F2023.11.03.565575},
  journal={bioRxiv},
  year={2023},
  publisher={Cold Spring Harbor Laboratory}
}