需要提取vcf文件的样本基因型,原始文件:
代码:
import vcf
vcf_reader = vcf.Reader(filename=r"I:/1000GenomeProject/vcftools_filter/chr22_filter.recode.vcf")
genomeType=[]
for record in vcf_reader:
# 样本个数
# print(record._sample_indexes)
# 样本基因型
# 把FORMAT信息作为键,后面对应的信息做为值,构建成的字典(CallData对象),以及sample名称,这两个值组成一个Call对象,共同构成samples的一个元素。这样就把sample和基因型信息给关联起来,按下标访问每一个Call对象。samples类型为list。
# print(record.samples)
print("--------------------------------------------------------")
for sample in record.samples:
#获取基因型 0|0 0|1...
genomeType.append(sample['GT'])