sc_tim

scTIM is a convenient tool for cell-type indicative marker detection based on single cell RNA-seq data


Keywords
celltype-inditive-marker, marker-detection, single-cell-rna-seq
License
Other
Install
pip install sc_tim==0.0.4

Documentation

scTIM

Introduction

A convenient tool for marker detection based on single cell RNA-seq data.

Installation

pip install sc_tim

Usage example:

Then run the following python script

>>> import numpy as np
>>> import sc_tim

>>> file_name = 'scTIM-master/Package/data.txt'                                      ### Defining file name
>>> alpha = 0.1;beta = 0.4;gamma = 0.5;                                       ### Setting Parameters
>>> data,gene = sc_tim.PreProcess(file_name,'y')                               ### Preprocessing data
>>> p = sc_tim.CellRedMatrix(data)                                             ### Computing cell-cell distance matrix
>>> fs = sc_tim.GeneSpecificity(data)                                          ### Computing gene specificity
>>> red = sc_tim.GeneRedMatrix(data)                                           ### Computing gene-gene redundancy matrix
>>> w = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)                        ### Identifying markers by simulating annealing
>>> marker = [gene[i] for i in range(data.shape[0]) if w[i] == 1]             ### Output the marker set

For more robust solution, we repeat the simulating annealing for 10 times and use the inersection of 10 outcomes as final result and these 10 repeats can be conducted by parallel computing:

>>> w1 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w2 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w3 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w4 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w5 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w6 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w7 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w8 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w9 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma)
>>> w10 = sc_tim.ExtractGene(data,p,red,alpha,beta,gamma) 
>>> w = (np.sum([w1,w2,w3,w4,w5,w6,w7,w8,w9,w10],0)==10)                       ### Intersection
>>> marker = [gene[i] for i in range(data.shape[0]) if w[i] == 1]              ### Output the marker set

Requirements:

Python environment: python 3
numpy
Memory >= 3.0 Gb