前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >对10X单细胞reads进行随机抽样

对10X单细胞reads进行随机抽样

作者头像
生信编程日常
发布2021-03-25 15:48:56
1.2K0
发布2021-03-25 15:48:56
举报

此功能使用样本中的信息通过指定的道具对每个分子的读数进行下采样。然后,它基于具有非零读取计数的分子构造一个UMI计数矩阵。目的是消除技术噪声中的差异,这些差异可以按批次进行聚类,如downsampleMatrix中所述。

用downsampleReads对读数进行二次采样可以概括每个单元的测序深度差异的影响。这提供了使用CellRanger aggr功能进行下采样或使用10X Genomics R套件进行下采样的替代方法。请注意,这与使用downsampleMatrix直接对UMI计数矩阵进行二次采样有所不同。

如果bycol = FALSE,则对整个数据集中的所有读取执行不替换的降采样。下采样后,每个单元的读取总数可能不完全等于原始值的prop乘以。请注意,这是更自然的方法,并且是默认方法,与downsampleMatrix中使用的默认方法不同。

如果bycol = TRUE,则对每个单元的读数执行不替换的采样。下采样后,每个单元的读取总数保证是原始总数的prop倍(四舍五入到最接近的整数)。通过将prop设置为向量,可以为不同的单元格指定不同的比例,其中每个比例都按照get10xMolInfoStats返回的顺序对应于一个单元格/ GEM组合。

代码语言:javascript
复制
if (!requireNamespace("BiocManager", quietly = TRUE))
  install.packages("BiocManager")
BiocManager::install("DropletUtils")
library("DropletUtils")

使用seqtk对原始fastq文件进行随机抽样

代码语言:javascript
复制
#install
conda install -c bioconda seqtk

双端测序数据的用法:

代码语言:javascript
复制
seqtk sample -s100 read1.fq 10000 > sub1.fq
seqtk sample -s100 read2.fq 10000 > sub2.fq

对于10X单细胞数据,因为有三个文件I1,R1,R2,所以对着三个文件都进行下采样。

代码语言:javascript
复制
seqtk sample -s100 input_S1_L001_I1_001.fastq.gz 30000000 > output_S1_L001_I1_001.fastq.gz
seqtk sample -s100 input_S1_L001_R1_001.fastq.gz 30000000 > output_S1_L001_R1_001.fastq.gz
seqtk sample -s100 input_S1_L001_R2_001.fastq.gz 30000000 > output_S1_L001_R2_001.fastq.gz
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档