对于生物信息学项目,我想将 .BED 文件读入 pandas 数据框,但不知道我该怎么做以及需要哪些工具/程序。我在互联网上找到的任何东西都不适用于我,因为我正在使用 Python 3.7(Anaconda 发行版)在 windows10 上工作。
任何帮助,将不胜感激。
对于生物信息学项目,我想将 .BED 文件读入 pandas 数据框,但不知道我该怎么做以及需要哪些工具/程序。我在互联网上找到的任何东西都不适用于我,因为我正在使用 Python 3.7(Anaconda 发行版)在 windows10 上工作。
任何帮助,将不胜感激。
根据https://software.broadinstitute.org/software/igv/BED:
BED 文件 (.bed) 是一个制表符分隔的文本文件,用于定义特征轨迹。
根据http://genome.ucsc.edu/FAQ/FAQformat#format1包含多达 12 个字段(列)和可能以单词开头的注释行'track'
。以下是将此类bed
文件读入 pandas 数据帧的最小程序。
import pandas as pd
df = pd.read_csv('so58178958.bed', sep='\t', comment='t', header=None)
header = ['chrom', 'chromStart', 'chromEnd', 'name', 'score', 'strand', 'thickStart', 'thickEnd', 'itemRgb', 'blockCount', 'blockSizes', 'blockStarts']
df.columns = header[:len(df.columns)]
这只是一个非常简单的代码片段,它将所有以 a 开头的行't'
视为注释。这应该可以工作,因为所有“chrom”字段条目都应该以 a 'c'
、 an's'
或数字开头。
如果您使用pyranges,将为 df 指定名称和相应的数据类型。
import pyranges as pr
df = pr.read_bed("your.bed", as_df=True)
它还具有用于不整洁的生物信息学格式的阅读器,例如 gtfs 和 gff3s。