单细胞数据用Harmony算法进行批次矫正

这篇文章介绍了Harmony,一个用于整合单细胞RNAseq数据的R包,能进行批校正和多变量分析。它支持PCA嵌入输入,可处理归一化表达矩阵,也可与Seurat无缝集成。Harmony能同时考虑多个协变量,如batch_id和donor,帮助消除批次效应。
摘要由CSDN通过智能技术生成

Harmony

整合单细胞RNAseq数据进行批校正和后续分析

System requirements

Harmony必须在R版本3.4以上运行,支持 Linux, OS X, and Windows 平台。

Installation

老方法

library(devtools)
install_github("immunogenomics/harmony")

安装过程可能包括从源代码编译C ++代码,因此可能需要几分钟。

Usage

Quick Start
PCA matrix

Harmony算法迭代地校正PCA嵌入。要直接输入您自己的低维嵌入,请设置do_pca = FALSE。 Harmary与一个小的数据集打包在一起。

library(harmony)
my_harmony_embeddings <- HarmonyMatrix(my_pca_embeddings, meta_data, "dataset", do_pca=FALSE)
Normalized gene matrix

也可以在库大小归一化的表达式计数的稀疏矩阵上运行Harmony。Harmony将扩展这些计数,运行PCA,最后执行整合。

library(harmony)
my_harmony_embeddings <- HarmonyMatrix(normalized_counts, meta_data, "dataset")
Seurat

您可以在Seurat工作流程中运行Harmony。 您只需要对代码进行两项更改。

1、使用RunHarmony()函数运行Harmony
2、在下游分析中,使用Harmony嵌入代替PCA。
egs:
seuratObj <- RunHarmony(seuratObj, "dataset")
seuratObj <- RunUMAP(seuratObj, reduction = "harmony")

也就是说用RunHarmony的方法代替PCA。

Harmony with two or more covariates

和谐可以整合多个协变量。 为此,请指定要积分的向量协变量。(就是去除批次效应)

my_harmony_embeddings <- HarmonyMatrix(my_pca_embeddings, meta_data, c("dataset", "donor", "batch_id"), do_pca=FALSE)

Do the same with your Seurat object:

seuratObject <- RunHarmony(seuratObject, c("dataset", "donor", "batch_id"))

这个方法跟Seurat根据样本去除批次效应有点类似

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值