用于从bgen文件加载数据的包
bgen的Python项目详细描述
另一个bgen阅读器
这是一个用于读取bgen files的包。在
这个包使用cython包装用于解析bgen文件的c++代码。这是公平的 很快,它可以分析500000个个体的基因型,每种变异大约300个 在单个python进程中的第二个(每秒约4.5亿个概率 使用3GHz CPU)。降低基因型概率是一个缓慢的步骤, 使用zstd压缩基因型,zlib减压占总时间的80% 会快得多,可能快2-3倍?在
这已经为UKBiobank bgen文件(即bgen版本1.2和 zlib压缩了8位基因型概率,但是其他bgen版本和 zstd压缩也已经用bgen文件进行了测试)。在
安装
pip install bgen
用法
frombgenimportBgenFilebfile=BgenFile(BGEN_PATH)rsids=bfile.rsids()# select a variant by indexingvar=bfile[1000]# pull out genotype probabilitiesprobs=var.probabilities# returns 2D numpy arraydosage=var.minor_allele_dosage# returns 1D numpy array for biallelic variant# iterate through every variant in the filewithBgenFile(BGEN_PATH,delay_parsing=True)asbfile:forvarinbfile:dosage=var.minor_allele_dosage# get all variants in a genomic regionvariants=bfile.fetch('21',10000,5000000)API文档 ^{pr2}$
- 项目
标签: