内容

1简介

Pooled CRISPR摄动屏幕使用一个导向rna (gRNAs)库,该库被转导到一个细胞池中,目的是在每个细胞中诱导单个遗传摄动。通过测量筛选阶段后每个gRNA的丰度,并将其与质粒库中的丰度进行比较,来评估摄动效应。以下分析的主要目的是检测必需基因,即基因的敲除会降低细胞的适合度。软件包gscreend提供了一种基于计数表对基因进行排序的方法。

2gscreend工作流

为了从原始的gRNA计数数据中识别必需基因,gscreend执行以下分析步骤:

  1. 输入原始gRNA计数在T0(库的排序)和T1(在屏幕末端)。对数折叠变化的归一化和计算。

  2. 拆分对数折叠变化为依赖于T0处初始计数的间隔。

  3. 对于每个区间拟合数据的斜正态分布来建模零假设(通过最小分位数回归)。

  4. 根据空模型计算每个gRNA的p值。

  5. 根据p值对grna进行排序,并进行稳健的排序聚合,计算出基因水平上的p值。

  6. 对数据和统计模型进行质量控制。

3.安装

如果(!("BiocManager", quiet = TRUE)) install.packages("BiocManager")
库(gscreend)库(SummarizedExperiment)

4用gscreen对模拟数据进行分析

4.1输入数据:gRNA计数

本例中使用的模拟数据是使用以下可用的模拟方法生成的https://github.com/imkeller/simulate_pooled_screen

原始计数数据包括文库测序中的gRNA计数和屏幕增殖阶段后的不同复制。为了估计特定gRNA对细胞适应度的影响,我们将比较增殖期前后gRNA的相对丰度

raw_counts < -阅读。表(系统。file("extdata", "simulated_counts.txt", package = "gscreend"), header=TRUE)

从计数数据中生成一个总结实验。gscreend目前使用summarizeexperiment对象作为输入格式。

计数矩阵包含原始gRNA计数。每一行代表一个gRNA,每列代表一个样本(T0, T1,重复,…)

counts_matrix <- cbind(raw_counts$library0, raw_counts$R0_0, raw_counts$R1_0) rowData <- data.frame(sgRNA_id = raw_counts$ sgRNA_id, gene = raw_counts$ gene) colData <- data.frame(samplename =c ("library", "R1", "R2"), #时间点命名惯例:# T0 -> reference, # T1 -> after proliferation timepoint =c ("T0", "T1", "T1")) se <- summarizeexperiment (assays=list(counts=counts_matrix), rowData=rowData, colData=colData)

4.2运行gscreend

在此步骤中,生成一个gscreend实验对象,该对象在分析后将包含所有与gRNAs、基因和模型参数相关的数据。

pse < - createPoolScreenExp (se)
从summarizeexperiment对象创建PoolScreenExp对象。
引用和示例的命名正确。
提供了关于sgRNA和基因的数据。

使用默认参数运行gscreend命令。

pse_an < - RunGscreend (pse)
##大小规格化计数数据。
# #计算利物浦。
##适合的空分布。
## gRNA水平的计算p值。
# #排名基因……
# #……对于正的折叠变化
# #……对于负的折叠变化
gscreend分析已经完成。

4.3质量控制

例如,Gscreend提供了基本的质量控制功能,用于检查复制相关性。

plotReplicateCorrelation (pse_an)

plotModelParameters ()函数可用于检验对数折叠变化数据的斜态正态分布估计参数的值。

plotModelParameters (pse_an)

5结果

ResultsTable函数可以用来提取每个基因的p值和fdr的列表。这些值与统计检验的结果相对应,统计检验表明,在扰动下,特定基因是否降低(方向=“阴性”)或增加(方向=“阳性”)细胞活力。

res <- ResultsTable(pse_an, direction = "negative")
##名称fdr pval lfc ## essential_0 essential_0 0.000310559 0.00002 -1.421372 ## essential_1 essential_1 0.000000000 0.00000 -1.984253 ## essential_10 essential_10 0.000310559 0.00002 -1.605037 ## essential_100 essential_100 0.000000000 0.00000 -3.075151 ## essential_1000 essential_1000 0.000000000 0.00000 -2.023614 ## essential_1001 essential_1001 0.055156951 0.00492 -1.032688

6会话信息

sessionInfo ()
## R版本4.2.0 RC (22-04-19 r82224) ##平台:x86_64-pc-linux-gnu(64位)##运行在:Ubuntu 20.04.4 LTS ## ##矩阵产品:default ## BLAS: /home/biocbuild/bbs-3.15-bio /R/lib/libRblas. ##因此## LAPACK: /home/biocbuild/bbs-3.15-bio /R/lib/libRlapack。因此## ## locale: ## [1] LC_CTYPE=en_US。UTF-8 LC_NUMERIC= c# [3] LC_TIME=en_GB LC_COLLATE= c# [5] LC_MONETARY=en_US。utf - 8 LC_MESSAGES = en_US。UTF-8 ## [7] LC_PAPER=en_US。UTF-8 LC_NAME= c# [9] LC_ADDRESS=C LC_TELEPHONE= c# [11] LC_MEASUREMENT=en_US。utf - 8 LC_IDENTIFICATION = C附加基本包:# # # # # # [1]stats4统计图形grDevices跑龙套数据集方法# # # # # #[8]基地其他附加包:# # [1]SummarizedExperiment_1.26.0 Biobase_2.56.0 # # [3] GenomicRanges_1.48.0 GenomeInfoDb_1.32.0 # # [5] IRanges_2.30.0 S4Vectors_0.34.0 # # [7] BiocGenerics_0.42.0 MatrixGenerics_1.8.0 # # [9] matrixStats_0.62.0 gscreend_1.10.0 # # [11] BiocStyle_2.24.0 # # # #通过加载一个名称空间(而不是附加):# [4] bslib_0.3.1 compiler_4.2.0 BiocManager_1.30.17 ## [7] jquerylib_0.1.4 XVector_0.36.0 timeSeries_3062.100 ## [10] bitops_1.0-7 tools_4.2.0 zlibbioc_1.42.0 ## [13] digest_0.6.29 lattice_0.20-45 jsonlite_1.8.0 ## [16] evaluate_0.15 rlang_1.0.2 fGarch_3042.83.2 ## [19] Matrix_1.4-1 DelayedArray_0.22.0 cli_3.0 ## [25] magick_7.3 parallel_4.2.0 yaml_2.3.5 ## [25] xfun_0.30 fastmap_1.1.0 GenomeInfoDbData_1.2.8 ## [28] string_1 .4.0 knitr_1.38sass_0.4.1 ## [31] grid_4.2.0 R6_2.5.1 BiocParallel_1.30.0 ## [34] spatial_7.3-15 rmarkdown_2.14 bookdown_0.26 ## [37] magrittr_2.0.3 fBasics_3042.89.1 htmltools_0.5.2 ## [40] timeDate_3043.102 stringi_1.7.6 RCurl_1.98-1.6