Python小推车计算机@linux_python_R 技术帖python模块

pyvcf

2019-04-04  本文已影响26人  Thinkando

1. 读取vcf 与写出

-读取

import vcf
vcf_reader = vcf.Reader(open('vcf/test/example-4.0.vcf', 'r'))
for record in vcf_reader:
  print (record)
>>> vcf_writer = vcf.Writer(open('/dev/null', 'w'), vcf_reader)
>>> for record in vcf_reader:
... vcf_writer.write_record(record)

2. recode 属性

Record.CHROM 
Record.POS
Record.ID
Record.REF
Record.ALT
Record.QUAL
Record.FILTER
Record.INFO # 返回一个字典,可以用Record.INFO['type'],Record.INFO['DP'] 键值继续提取
Record.FORMAT  #返回format列 字符串  如果你的vcf文件中没有FORMAT 返回 "GT:DP:RO:QR:AO:QA:GL"
print i.samples  # 返回的是三个样 call object 组成的列表。

# 使用方法
print(record.POS)

3. 提取基因型

for record in vcf_reader:
        for j in record.samples:
            print(j['GT']) 

4. fetch

 import vcf 
 myvcf = vcf.Reader(filename='testpyvcf.vcf.gz')
 for i in myvcf.fetch('Chr1', 1111, 444444):      #第一个是序列名,第二个起始,第三个end,包括。
  1. https://buildmedia.readthedocs.org/media/pdf/pyvcf/latest/pyvcf.pdf

看了这个感觉还是没解决我的问题。

上一篇下一篇

猜你喜欢

热点阅读