使用Bio.Entrez模块从GenBank检索数据

问题描述 投票:0回答:1

我正在尝试解决Rosalind的一个挑战,我似乎无法找到在特定时间范围内检索数据的方法。

http://rosalind.info/problems/gbk/

是/如何修改Entrez.esearch()以指定时间范围?

Question

Given:属名,后跟YYYY / M / D格式的两个日期。

Return:在指定日期之间发布的给定属的Nucleotide GenBank条目数。

测试数据:

  • 黄花
  • 2003/7/25
  • 2005/12/27

答案:7

python bioinformatics biopython
1个回答
1
投票

非常感谢@Kayvee的指针!它就像一个魅力!

这是一种通过'在起始端之间发布'搜索有机体的格式:

(Anthoxanthum[Organism]) AND ("2003/7/25"[Publication Date] : "2005/12/27"[Publication Date])

这是Python代码:

# GenBank gene database
geneName = "Anthoxanthum"
pubDateStart = "2003/7/25"
pubDateEnd = "2005/12/27"
searchTerm = f'({geneName}[Organism]) AND("{pubDateStart}"[Publication Date]: "{pubDateEnd}"[Publication Date])'

print(f"\n[GenBank gene database]:")
Entrez.email = "[email protected]"
handle = Entrez.esearch(db="nucleotide", term=searchTerm)
record = Entrez.read(handle)
print(record["Count"])
© www.soinside.com 2019 - 2024. All rights reserved.