我感觉很愚蠢,但我无法弄清楚下面的语法,而且我已经在谷歌上搜索了一段时间没有成功。
很容易,我想在脚本中使用 pybedtools 将其转换为 bedpe。
以下效果很好:
pybed_BAM = pybedtools.BedTool("path/to/sorted/bam")
bedpe = pybed_BAM.bam_to_bed().to_dataframe()
但是,当然,它会导致正常的床文件。如果我尝试添加 bedpe 参数,pybed_BAM.bam_to_bed("-bedpe")
或者pybed_BAM.bam_to_bed("bedpe")
它失败:
TypeError: handle_kwargs() keywords must be strings
不幸的是,bam_to_bed() 页面没有提供语法解释,而只是命令行工具帮助的复制粘贴。上述尝试是试图从其他 pybedtools 函数中借用语法,但显然是不正确的。我错过了什么?
PS该文件很好,因为使用bedtools bamtobed从命令行转换可以正常工作。
PPS 我想避免子进程管道并使用 pybedtools