對10X單細胞reads進行隨機抽樣

此功能使用樣本中的信息通過指定的道具對每個分子的讀數進行下采樣。然後,它基於具有非零讀取計數的分子構造一個UMI計數矩陣。目的是消除技術噪聲中的差異,這些差異可以按批次進行聚類,如downsampleMatrix中所述。

用downsampleReads對讀數進行二次採樣可以概括每個單元的測序深度差異的影響。這提供了使用CellRanger aggr功能進行下采樣或使用10X Genomics R套件進行下采樣的替代方法。請注意,這與使用downsampleMatrix直接對UMI計數矩陣進行二次採樣有所不同。

如果bycol = FALSE,則對整個數據集中的所有讀取執行不替換的降採樣。下采樣後,每個單元的讀取總數可能不完全等於原始值的prop乘以。請注意,這是更自然的方法,並且是默認方法,與downsampleMatrix中使用的默認方法不同。

如果bycol = TRUE,則對每個單元的讀數執行不替換的採樣。下采樣後,每個單元的讀取總數保證是原始總數的prop倍(四捨五入到最接近的整數)。通過將prop設置爲向量,可以爲不同的單元格指定不同的比例,其中每個比例都按照get10xMolInfoStats返回的順序對應於一個單元格/ GEM組合。

if (!requireNamespace("BiocManager", quietly = TRUE))
  install.packages("BiocManager")
BiocManager::install("DropletUtils")
library("DropletUtils")

使用seqtk對原始fastq文件進行隨機抽樣

#install
conda install -c bioconda seqtk

雙端測序數據的用法:

seqtk sample -s100 read1.fq 10000 > sub1.fq
seqtk sample -s100 read2.fq 10000 > sub2.fq

對於10X單細胞數據,因爲有三個文件I1,R1,R2,所以對着三個文件都進行下采樣。

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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章