一般我们常用R中Seurat、scran、monocle等的R包来处理单细胞数据,但是R在读取和处理数据的过程中会将所有的变量和占用都储存在RAM当中,在处理海量数据时经常会出现内存不足的情况。
scanpy是一个基于python的单细胞基因表达分析包,它包含了数据预处理、可视化、聚类、伪时间分析和轨迹推断、差异表达分析等数据分析手段等。
The Python-based implementation efficiently deals with datasets of more than one million cells.
https://scanpy.readthedocs.io/en/stable/index.html
安装scanpy:
# 建议用conda安装, 建议python版本大于3.6
# 安装依赖包
conda install seaborn scikit-learn statsmodels numba pytables
conda install -c conda-forge python-igraph leidenalg
# 安装scanpy,目前好像这个用conda还无法完成正确安装
pip install scanpy
Docker:docker pull fastgenomics/scanpy
教程:
1)聚类:https://scanpy-tutorials.readthedocs.io/en/latest/pbmc3k.html
2)可视化:https://scanpy-tutorials.readthedocs.io/en/latest/plotting/core.html
3)轨迹推断:https://scanpy-tutorials.readthedocs.io/en/latest/paga-paul15.html
4)数据整合分析(整合、降维、注释等):https://scanpy-tutorials.readthedocs.io/en/latest/integrating-data-using-ingest.html
5)空间分数分析:https://scanpy-tutorials.readthedocs.io/en/latest/spatial/basic-analysis.html
关于scanpy的介绍就到这里了,后面可以简单演示一下其分析流程和思路。
参考资料:
1.https://scanpy.readthedocs.io/en/stable/installation.html