一个用于 VCF 文件的快速 Python 库,使用 Cython 来提高速度。
项目描述
CyVCF
由@jamescasbon 维护的 PyVCF 库的 Cython 端口。
该项目的目标是提供一个非常快速的 Python 库,用于解析和操作大型 VCF 文件。Cython 已用于优化速度。这个版本比 PyVCF 快大约 4 倍,解析速度与 PLINKSEQ 和 VCFLIB 提供的 C/C++ 库基本相同。
功能和界面目前与此处记录的相同:http: //pyvcf.rtfd.org/
安装
python setup.py 构建 python setup.py 安装
测试
python setup.py 测试
基本用法
>>> import cyvcf >>> vcf_reader = cyvcf.Reader(open('test/example-4.0.vcf', 'rb')) >>> for record in vcf_reader: ... print record 20 14370 G A 29.0 . H2=True;NS=3;DB=True;DP=14;AF=0.5 GT:GQ:DP:HQ 0|0:48:1:51,51 1|0:48:8:51,51 1/1:43:5:.,. 20 17330 T A 3.0 q10 NS=3;DP=11;AF=0.017 GT:GQ:DP:HQ 0|0:49:3:58,50 0|1:3:5:65,3 0/0:41:3:. 20 1110696 A G,T 67.0 . AA=T;NS=2;DB=True;DP=10;AF=0.333,0.667 GT:GQ:DP:HQ 1|2:21:6:23,27 2|1:2:0:18,2 2/2:35:4:. 20 1230237 T . 47.0 . AA=T;NS=3;DP=13 GT:GQ:DP:HQ 0|0:54:7:56,60 0|0:48:4:51,51 0/0:61:2:. 20 1234567 GTCT G,GTACT 50.0 . AA=G;NS=3;DP=9 GT:GQ:DP ./. 0/2:17:2 1/1:40:3