使用broad出品的inferCNV来对单细胞转录组数据推断CNV信息
软件项目地址: https://github.com/broadinstitute/inferCNV.git
我在 https://mp.weixin.qq.com/s/Qns9TCSgNg_CQuwQxQbVnw 里面讲到了对单细胞转录组数据推断CNV信息的历史文献。其实看懂那些文件的补充材料的对单细胞表达矩阵的处理描述后是可以自己写代码来分析的,但是难度有点大,我们先来体验一下作者的软件。
软件说明书:https://github.com/broadinstitute/inferCNV/wiki 是一个R包,安装即可,并且下载源代码。
library("devtools")
install_github("broadinstitute/inferCNV")
install.packages("GMD",repos="https://mirror.lzu.edu.cn/CRAN/")
# Load libraries
library(ape)
library("RColorBrewer", character.only=TRUE)
library(GMD)
library(optparse)
library(logging)
library(infercnv)
理论上可以达到的效果是;
软件提供了测试数据,只需要运行即可。所有如果想测试自己的数据,或者其它公共数据来看看效果,就只需要理解它的测试数据的格式。
git clone https://github.com/broadinstitute/inferCNV.git
cd inferCNV
./scripts/inferCNV.R \
--ref_groups "1:235,236:280" \
--cutoff 4.5 \
--noise_filter 0.3 \
--output_dir quickstart \
--ref example/example_refs.txt \
--vis_bound_threshold " -1,1" \
example/example_expression.txt example/example_genomic_positions.txt
测试数据example/example_expression.txt
是一个含有两万多个基因,七百多个细胞的表达矩阵。
另外一个文件 example/example_genomic_positions.txt
是表达矩阵里面的两万多个基因的基因组坐标,如下:
gene_21929 24 9528709 9531566
gene_21930 24 6341671 6338814
gene_21931 24 20891768 20901083
gene_21932 24 20752407 20743092
gene_21993 24 21729268 21766006
gene_22360 24 14813160 14972764
gene_22377 24 15592553 15360259
gene_22418 24 16098393 16097652
gene_22419 24 16168097 16168838
gene_23023 24 2803112 2850547
一般来说,出上面的示例图是没有问题的,但是要运用到自己的数据,就需要一番苦功夫了。
quickstart
├── [ 11M] General_HCL_1_members.txt
├── [ 15M] expression_pre_vis_transform.txt
├── [ 11K] observation_groupings.txt
├── [ 11M] observations.txt
├── [ 15K] observations_dendrogram.txt
└── [3.6M] references.txt
12M Mar 23 21:58 quickstart.infercnv.pdf
15M Mar 23 21:57 quickstart_expression_post_viz_transform.txt
产生的 quickstart.infercnv.pdf
文件就是我们需要的单细胞转录组的拷贝数变异的聚类结果。
其实拷贝数变异,还是需要对DNA数据来分析。