在单细胞数据中模拟连续细胞状态和细胞命运选择的Palantir

palantir的Python项目详细描述


帕兰提尔

Palantir是一种沿着分化轨迹排列细胞的算法。Palantir将分化模型为一个随机过程,其中干细胞通过一系列低维表型流形向最终分化的细胞分化。Palantir有效地捕捉到细胞状态的连续性和细胞命运决定的随机性。Palantir被设计用来处理来自不同技术的多维单细胞数据,如质量细胞术和单细胞RNA序列。在

安装和依赖性

  1. Palantir已经在Python3中实现,可以使用以下方式安装:

     $> pip install PhenoGraph
     $> pip install palantir
    
  2. Palantir依赖于pypi上可用的许多python3包,这些依赖项列在setup.py

    所有依赖项将使用上述命令自动安装

  3. 要卸载:

    ^{pr2}$ 在
  4. 如果您想确定基因表达趋势,请安装 R programming language and the R package GAM 。您还需要使用安装rpy2模块

     $> pip install .['PLOT_GENE_TRENDS']
         OR,
     $> pip install rpy2
    

    如果安装rpy2时出现编译器错误,请尝试在env中链接编译器。示例:

     $> env CC=/usr/local/Cellar/gcc/xxx/bin/gcc-x pip install .['PLOT_GENE_TRENDS']
    

    其中x应替换为版本号

  5. Palantir也可以与Scanpy一起使用。它完全集成到Scanpy中,可以在Scanpy的外部模块下找到(link

用法

关于Palantir用法和单细胞RNA seq数据结果可视化的教程可以在这个笔记本中找到:http://nbviewer.jupyter.org/github/dpeerlab/Palantir/blob/master/notebooks/Palantir_sample_notebook.ipynb

处理的数据和元数据

在手稿中生成的三个副本中,scanpy anndata对象可供下载:Rep1Rep2Rep3

每个对象都有以下元素

  • .X:过滤、规范化和对数转换的计数矩阵
  • .raw:过滤的原始计数矩阵
  • .obsm['MAGIC_imputed_data']:使用MAGIC的插补计数矩阵
  • .obsm['tsne']:手稿中呈现的tSNE图,使用标度扩散组件作为输入生成
  • .obs['clusters']:细胞聚集
  • .obs['palantir_pseudotime']:Palantir伪时间排序
  • .obs['palantir_diff_potential']:Palantir微分势
  • .obsm['palantir_branch_probs']:Palantir分支概率
  • .uns['palantir_branch_probs_cell_types']:分支概率的列名
  • .uns['ct_colors']:手稿中使用的单元格类型颜色
  • .uns['cluster_colors']:手稿中使用的簇颜色
  • .varm['mast_diff_res_pval']:每个簇中差异表达的MAST p值
  • .varm['mast_diff_res_statistic']:每个簇与其他簇中差异表达的MAST统计
  • .uns['mast_diff_res_columns']:差异表达式结果的列名

与轨迹检测算法的比较

详细介绍Palantir与轨迹检测算法比较结果的笔记本可供使用here

引文

帕兰提尔手稿可从Nature Biotechnology获得。如果你在工作中使用Palantir,请引用我们的论文。在

    @article{Palantir_2019,
            title = {Characterization of cell fate probabilities in single-cell data with Palantir},
            author = {Manu Setty and Vaidotas Kiseliovas and Jacob Levine and Adam Gayoso and Linas Mazutis and Dana Pe'er},
            journal = {Nature Biotechnology},
            year = {2019},
            month = {march},
            url = {https://doi.org/10.1038/s41587-019-0068-4},
            doi = {10.1038/s41587-019-0068-4}
    }

发行说明

版本1.0.0

  • 修复issue#41
  • 修复issue#42
  • 改进教程,支持Anndata和force-directed layouts

版本0.2.6

版本0.2.5

  • issue#28相关的修复。当识别终端状态时,生成重复值而不是唯一值。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java连接在一个屏幕上成功下载,在第二个屏幕上用几乎相同的代码获得错误   java调用super。超级的方法,跳过超级。方法   使用Web服务连接到sharepoint 2013的Java应用程序   java我无法正确呈现editText   httpurlconnection如何在java中检查url连接状态   java Spring Security可以为同一用户接受多个密码吗?   java如何在PreparedStatement中使用自动生成的@Id?   java每个数组表示一个位模式   java我不确定如何记录鼠标在某个区域被点击的次数   spring如何解决:java。lang.NoSuchMethodError:javax。坚持不懈实体管理器。createStoredProcedureQuery(Ljava/lang/String;)   java如何为blackberry中listfield项内的不同字段触发事件   安卓使用Proguard混淆java代码   java在grails 2中与多个数据源有一个和一个域关联。十、   java在尝试在单击按钮时返回combobox值时一直出错   java我可以在setter中使用@Resource注释而不是字段吗?   java Eclipse调试步进不工作   java比较相同对象的两个表并选择不同的表