使用immunarch包进行单细胞免疫组库数据分析(一):包的简介与安装

简介:

immunarch包是一个主要面向于医学科学家和生物信息学家们设计的,专门针对 T 细胞受体 (TCR) 和 B 细胞受体 (BCR) 免疫组库数据进行分析的R包。使用immunarch包,使得免疫组库测序数据的分析变的尽可能轻松,并帮助您专注于研究而非编程。

为什么使用immunarch

  • 可以分析处理任何类型的免疫组库数据: single-cell、bulk、data tables、databases -- 随心所欲。
  • 以社区为核心: 在全球近 30,000 名研究人员和医学科学家组成的社区中提出问题、分享知识并茁壮成长。辉瑞、诺华、再生元、斯坦福、加州大学旧金山分校麻省理工学院都信任我们。
  • 一行代码一张图:8 行代码写一篇完整的博士论文或用 5-10 行immunarch代码复制出几乎所有出版物中的图表。
  • 站在科学的前沿: 我们会定期更新immunarch最新的方法。让我们知道你需要什么!
  • 自动检测和解析 所有流行的免疫测序格式:从MiXCRImmunoSEQ10XGenomicsArcherDX

特征:

  1. 快速简便地操作免疫组库数据:

  2. 使得免疫组库数据分析变得简单:

    • 大多数分析方法都包含在几个具有明确命名的主要函数中——不用再去记住数十个名称晦涩的函数。详情见链接
    • 克隆库重叠分析(Repertoire overlap analysis )(常用指标包括重叠系数、Jaccard 指数和 Morisita 重叠指数)。教程可在此处获得
    • TCR/BCR基因使用估计(Gene usage estimation )(相关性、Jensen-Shannon Divergence、聚类)。教程可以在这里找到
    • 克隆多样性评价(Diversity evaluation)(生态多样性指数、基尼指数、逆辛普森指数、稀疏分析)。教程可以在这里找到
    • 跨时间点克隆型追踪(Tracking of clonotypes across time points),广泛用于疫苗接种和癌症免疫学领域。教程可以在这里找到
    • Kmer分布测量和统计(Kmer distribution measures and statistics)。教程可以在这里找到
    • 即将发布的下一个版本:CDR3 氨基酸序列理化特性评估、突变网络。
  3. 带有丰富的用于可视化操作的内置工具:

    • 丰富的ggplot2可视化程序;
    • 内置工具FixVis使您可以交互式操作可视化:使用清晰的 GUI 轻松更改字体大小、文本角度、标题、图例等;
    • 教程可在此处获得

Immunarch包的安装

可以直接在CRAN上安装,或者通过GitHub安装最新或的开发版本。

Latest release on CRAN

install.packages("immunarch")

Latest release on GitHub

install.packages("devtools") # skip this if you already installed devtools
devtools::install_github("immunomind/immunarch")

Latest pre-release on GitHub

install.packages("devtools") # skip this if you already installed devtools
devtools::install_github("immunomind/immunarch", ref="dev")

快速开始

接下来,我们将使用immunarch包内置的测试数据集进行演示 TCR 或 BCR的数据分析工作流程。
1) 加载包和示例数据

# 加载所需的包和数据集
library(immunarch)  # Load the package into R
data(immdata)  # Load the test dataset

# 查看示例数据
names(immdata)
#[1] "data" "meta"

names(immdata$data)
# [1] "A2-i129" "A2-i131" "A2-i133" "A2-i132" "A4-i191" "A4-i192" "MS1"     "MS2"     "MS3"    
# [10] "MS4"     "MS5"     "MS6"  

head(immdata$data$`A2-i129`)
## A tibble: 6 x 15
#  Clones Proportion CDR3.nt CDR3.aa V.name D.name J.name V.end D.start D.end J.start VJ.ins
#   <dbl>      <dbl> <chr>   <chr>   <chr>  <chr>  <chr>  <int>   <int> <int>   <int>  <dbl>
#1    173    0.0204  TGCGCC… CASSQE… TRBV4… TRBD1  TRBJ2…    16      18    26      31     -1
#2    163    0.0192  TGCGCC… CASSYR… TRBV4… TRBD1  TRBJ2…    11      13    18      22     -1
#3     66    0.00776 TGTGCC… CATSTN… TRBV15 TRBD1  TRBJ2…    11      16    22      34     -1
#4     54    0.00635 TGTGCC… CATSIG… TRBV15 TRBD2  TRBJ2…    11      19    25      26     -1
#5     48    0.00565 TGTGCC… CASSPW… TRBV27 TRBD1  TRBJ1…    11      16    23      31     -1
#6     48    0.00565 TGCGCC… CASQGD… TRBV4… TRBD1  TRBJ1…     8      13    19      23     -1
# … with 3 more variables: VD.ins <dbl>, DJ.ins <dbl>, Sequence <lgl>

names(immdata$data$`A2-i129`)
# [1] "Clones"     "Proportion" "CDR3.nt"    "CDR3.aa"    "V.name"     "D.name"     "J.name"    
# [8] "V.end"      "D.start"    "D.end"      "J.start"    "VJ.ins"     "VD.ins"     "DJ.ins"    
# [15] "Sequence"

head(immdata$meta)
## A tibble: 6 x 6
#  Sample  ID    Sex     Age Status Lane 
#  <chr>   <chr> <chr> <dbl> <chr>  <chr>
#1 A2-i129 C1    M        11 C      A    
#2 A2-i131 C2    M         9 C      A    
#3 A2-i133 C4    M        16 C      A    
#4 A2-i132 C3    F         6 C      A    
#5 A4-i191 C8    F        22 C      B    
#6 A4-i192 C9    F        24 C      B   

该示例数据集主要由两部分组成,其中data部分存储了12个样本的TCR或BCR注释信息,meta部分存储了这12个样本的metadata注释信息。
其中,data部分存储的每个样本的TCR或BCR注释信息包括以下条目:

  • Clones”——条形码(events, UMIs)或reads的计数或数量;
  • Proportion”——条形码(events, UMIs)或reads的比例;
  • CDR3.nt”——CDR3核苷酸序列;
  • CDR3.aa”——CDR3氨基酸序列;
  • V.name”——对齐的Variable 基因片段的名称;
  • D.name”——对齐的Diversity 基因片段或 NA 的名称;
  • J.name”——对齐的Joining基因片段的名称;
  • V.end”——对齐的 V 基因片段的最后位置(基于 1);
  • D.start”——对齐的 D 基因片段的 D'5 末端的位置(基于 1);
  • D.end”——对齐的 D 基因片段的 D'3 末端的位置(基于 1);
  • J.start”——对齐的 J 基因片段的第一个位置(基于 1);
  • VJ.ins”——VJ 连接处插入核苷酸(N-核苷酸)的数量(-1 用于 VDJ 重组的受体);
  • VD.ins”——VD 连接处插入核苷酸(N-核苷酸)的数量(-1 用于 VJ 重组的受体);
  • DJ.ins”——DJ 连接处插入核苷酸(N-核苷酸)的数量(-1 用于 VJ 重组的受体);
  • Sequence”——完整的核苷酸序列。

2) 计算和可视化基本统计数据

# 可视化CDR3区的序列长度分布
repExplore(immdata$data, "lens") %>% vis()  # Visualise the length distribution of CDR3
image.png
# 可视化克隆型的相对丰度
repClonality(immdata$data, "homeo") %>% vis()  # Visualise the relative abundance of clonotypes
image.png

3) 探索和比较 T 细胞和 B 细胞库

# 构建不同克隆型之间共享的重叠克隆型热图
repOverlap(immdata$data) %>% vis()  # Build the heatmap of public clonotypes shared between repertoires
image.png
# 可视化第一个克隆型的V基因分布图
geneUsage(immdata$data[[1]]) %>% vis()  # Visualise the V-gene distribution for the first repertoire
image.png
# 可视化克隆型的多样性
repDiversity(immdata$data) %>% vis(.by = "Status", .meta = immdata$meta)  # Visualise the Chao1 diversity of repertoires, grouped by the patient status
image.png

使用自己的数据

immunarch包可以使用repLoad函数加载读取自己的数据集进行后续的分析,使用repSave函数保存分析的结果,repLoad函数可以自动检测输入文件的格式,我们可以通过?repLoad查看更详细的数据导入信息。

目前,immunarch包可以支持以下免疫组库数据的格式:

library(immunarch)  # Load the package into R
immdata <- repLoad("path/to/your/data")  # Replace it with the path to your data. Immunarch automatically detects the file format.

参考来源:https://immunarch.com/index.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,607评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,047评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,496评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,405评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,400评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,479评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,883评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,535评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,743评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,544评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,612评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,309评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,881评论 3 306
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,891评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,136评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,783评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,316评论 2 342

推荐阅读更多精彩内容