Metadata-Version: 2.1
Name: cstreet
Version: 0.0.2
Summary: CStreet is a python script (python 3.6 or higher) for cell states trajectory construction by using k-nearest neighbors graph algorithm for time-series single-cell RNA-seq data.
Home-page: https://github.com/yw-Hua/CStreet
Author: Yuwei Hua
Author-email: ywhua@tongji.edu.com
License: UNKNOWN
Description: # CStreet Overview
        CStreet is a python script (python 3.6 or higher) for cell states trajectory construction by using *k*-nearest neighbors graph algorithm for time-series single-cell RNA-seq data. It is a **developmental version**.
        
        # Installation
        
        1. Prepare required packages
           CStreet depends on a number of `python3` packages available on pypi and all dependencies can be installed using  `pip3` commands :
        
           ```shell
           $ pip3 install scanpy
           $ pip3 install anndata
           $ pip3 install networkx
           $ pip3 install fa2
           $ pip3 install retrying
           ```
        
        2. Download CStreet from github
           CStreet can be download using `git` command:
        
           ```shell
           $ cd /PATH/ # here you can replace "/PATH/" with any location you want
           $ git clone git://github.com/TongjiZhanglab/CStreet.git
           ```
        
        3. Import the main class
        
           ```python
           import sys
           sys.path.append("/PATH/CStreet/") # here you should replace "/PATH/" with the location where CStreet has been installed at
           from cstreet import *
           ```
        
           
        
        
        
        # Quick Start
        
        **Input file**: Only expression matrix containing the time-series expression level as reads counts or normalized values for this developmental version.
        
        **Output file**: An inferenced cell states trajectory.
        
        1. Add new time-series single cell RNA-seq data.
        
           ```python
           import numpy as np
           import pandas as pd
           # Read single cell data as DataFrame
           data_t1=pd.read_table('data_t1.txt',header=0, sep="\t",index_col=0) 
           data_t1=pd.read_table('data_t2.txt',header=0, sep="\t",index_col=0)
           data_t2=pd.read_table('data_t3.txt',header=0, sep="\t",index_col=0)
           data_t3=pd.read_table('data_t4.txt',header=0, sep="\t",index_col=0)
           # Create a new CStreet object
           cdata=CStreetData()
           # add data into CStreet object
           cdata.add_new_timepoint_scdata(data_t1)
           cdata.add_new_timepoint_scdata(data_t2)
           cdata.add_new_timepoint_scdata(data_t3)
           ```
           
        2. Customize parameters.
        
           ```python
           #Step1:cell_cluster
           cdata.params.cell_cluster_pca_n=10
           cdata.params.cell_cluster_knn_n=15
           cdata.params.cell_cluster_resolution=0.1
           
           #Step2:gene and cell filter
           cdata.params.filter_dead_cell=True
           cdata.params.percent_mito_cutoff=0.2
           cdata.params.filter_lowcell_gene=True
           cdata.params.min_cells=3
           cdata.params.filter_lowgene_cells=True
           cdata.params.min_genes=200
           
           #Step3:normalize
           cdata.params.normalize=True
           cdata.params.normalize_base=10000
           cdata.params.log_transform=True
           
           #Step4:get HVG
           cdata.params.highly_variable_genes=False
           
           #Step5:get_graph
           cdata.params.inner_graph_pca_n=10
           cdata.params.inner_graph_knn_n=15
           cdata.params.link_graph_pca_n=10
           cdata.params.link_graph_knn_n=15
           cdata.params.max_outgoing=10
           cdata.params.min_score=0.1
           cdata.params.min_cell_number=50
           ```
        
        3. Run CStreet
        
           ```python
           cdata.run_cstreet()
           ```
        
           
        
        # Result
        
        **An example of inferenced cell trajectory**:
        
        ![results.png](https://github.com/yw-Hua/MarkdownPicture/blob/master/CStreet/results2.png?raw=true)
        
        
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.6
Requires-Python: >=3.6, <4
Description-Content-Type: text/markdown
