美文网首页科研信息学R全基因组/外显子组测序分析
R语言中操作vcf文件的一个实例—vcfR包

R语言中操作vcf文件的一个实例—vcfR包

作者: 小明的数据分析笔记本 | 来源:发表于2020-01-11 15:40 被阅读0次
参考资料链接
安装vcfR

直接通过install.packages()函数就可以安装

install.packages("vcfR")

vcfR简介

vcfR is a package intended to help visualize, manipulate and quality filter data in VCF file.

vcf格式文件

利用各种测序数据检测变异的结果存储文件,简单划分vcf格式文件里的内容

  • ‘#’号开头行
  • 非#号开头行

vcfR包存储vcf文件分为三个部分

  • ‘#’号开头行——meta
  • 非#号开头行分为fix和gt两个部分

fix部分存储vcf文件中非#号开头行的前7列,分别是

  • 染色体编号
  • 碱基位置
  • ID
  • 参考碱基
  • 变异碱基
  • 质量值
  • 是否过滤

gt 部分存储两部分内容

  • format
  • 样本基因型
本文的数据使用 pinf_sc50.vcf.gz 来自R包 pinfsc50

读入数据

vcf<-read.vcfR("pinf_sc50.vcf.gz")

可以通过@符号获取meta、fix、gt三部分数据

vcf@meta
vcf@fix
vcf@gt

另外一些操作数据的操作

queryMETA(vcf,element="AD")
getFIX(vcf)[1:2,1:7]
vcf@gt[1:5,1:7]
gt<-extract.gt(vcf,element="GT")
gt[1:2,1:7]
结合基因组注释文件对数据进行展示
install.packages("ape")
library(ape)
vcf<-read.vcfR("pinf_sc50.vcf.gz",verbose=FALSE)
dan<-ape::read.dna("pinf_sc50.fasta",format="fasta")
gff<-read.table("pinf_sc50.gff",sep="\t",quote="")
chrom<-create.chromR(name="Supercontig",vcf=vcf,
                     seq=dan,ann=gff,verbose=TRUE)
chrom
plot(chrom)
image.png
options(scipen = 999)
chromoqc(chrom)
image.png
chrom<-proc.chromR(chrom,verbose = TRUE)
plot(chrom)
chromoqc(chrom)
image.png
image.png
探索一下以上作图用到的数据
> head(chrom@var.info)
             CHROM POS    MQ  DP mask  n Allele_counts        He       Ne
1 Supercontig_1.50  41 51.30 174 TRUE 16          0,32 0.0000000 1.000000
2 Supercontig_1.50 136 52.83 390 TRUE 17          32,2 0.1107266 1.124514
3 Supercontig_1.50 254 56.79 514 TRUE 17          31,3 0.1608997 1.191753
4 Supercontig_1.50 275 57.07 514 TRUE 17          31,3 0.1608997 1.191753
5 Supercontig_1.50 386 57.40 509 TRUE 16          29,3 0.1699219 1.204706
6 Supercontig_1.50 462 58.89 508 TRUE 17          31,3 0.1608997 1.191753
> head(chrom@seq)
1 DNA sequence in binary format stored in a vector.

Sequence length: 6 

Base composition:
    a     c     g     t 
0.000 0.333 0.167 0.500 
(Total: 6 bases)
> head(chrom@ann)
                V1 V2   V3     V4     V5 V6 V7 V8
1 Supercontig_1.50  . exon  38234  39706  .  +  .
2 Supercontig_1.50  . exon  94775  98998  .  +  .
3 Supercontig_1.50  . exon 102033 105840  .  -  .
4 Supercontig_1.50  . exon 102033 105840  .  -  .
5 Supercontig_1.50  . exon 102033 105840  .  -  .
6 Supercontig_1.50  . exon 102033 105840  .  -  .
                                                     V9
1               NAME=hypothetical protein;ID=PITG_17064
2     NAME=conserved hypothetical protein;ID=PITG_17068
3 NAME=coatomer protein complex, putative;ID=PITG_17069
4 NAME=coatomer protein complex, putative;ID=PITG_17069
5 NAME=coatomer protein complex, putative;ID=PITG_17069
6 NAME=coatomer protein complex, putative;ID=PITG_17069
> head(chrom@win.info)
             CHROM window start  end length   A   C   G   T    N other genic variants
1 Supercontig_1.50      1     1 1000   1000 267 213 293 227    0     0     0       16
2 Supercontig_1.50      2  1001 2000   1000 283 206 309 202    0     0     0       15
3 Supercontig_1.50      3  2001 3000   1000 229 213 235 177  146     0     0       10
4 Supercontig_1.50      4  3001 4000   1000   0   0   0   0 1000     0     0        0
5 Supercontig_1.50      5  4001 5000   1000   0   0   0   0 1000     0     0        0
6 Supercontig_1.50      6  5001 6000   1000   0   0   0   0 1000     0     0        0

欢迎大家关注我的公众好
小明的数据分析笔记本

相关文章

网友评论

    本文标题:R语言中操作vcf文件的一个实例—vcfR包

    本文链接:https://www.haomeiwen.com/subject/xcaavctx.html