【问题标题】:Script for downloading Medline abstracts with PMID使用 PMID 下载 Medline 摘要的脚本
【发布时间】:2014-09-09 00:45:19
【问题描述】:

我正在寻找一个脚本,通过提供 PubMed ID (PMID) 编号列表(例如,从 . .csv 文件)。理想的脚本是 R 和 Python,但我当然愿意接受任何解决方案或建议。 PubMed 可以找到here

顺便说一句,我确实找到了一个名为 MedlineR 的旧包,但这个包从未进入 Bioconductor,而且最近似乎没有任何关于它的讨论。

【问题讨论】:

    标签: python r web-scraping


    【解决方案1】:

    biopython 模块提供此功能。稍微修改教程中的例子(http://biopython.org/DIST/docs/tutorial/Tutorial.html#sec136):

    from Bio import Medline, Entrez
    pmids = ['18680603', '18665331', '18661158', '18627489', '18627452', '18612381']
    Entrez.email = 'your_email@your_address.com'
    handle = Entrez.efetch(db="pubmed", id=pmids, rettype="medline", retmode="text")
    records = Medline.parse(handle)
    # returns a generator containing dicts 
    # E.g. to get journal titles back
    for record in records:
        print record['JT']   # Abstracts would be record['AB']
    

    返回

    BMC pregnancy and childbirth
    Journal of natural medicines
    Mycorrhiza
    The New phytologist
    Molecular ecology
    PloS one
    

    【讨论】:

      【解决方案2】:

      RISmed 软件包似乎可以满足您的需求。 这是从手册中抄来的。

      require("RISmed")
      res <- EUtilsSummary("myeloma[ti] jones[au]")
      summary(res)
      
      Query:
      myeloma[ti] AND jones[au] 
      
      Result count:  66
      
      fetch <- EUtilsGet(res)
      PMID(fetch)
      > [1] "25188537" "25181509" "25042852" ...
      AbstractText(fetch)[[1]]
      [1] "The cause of follicular spicules in multiple myeloma (MM) is not known."
      

      【讨论】:

        【解决方案3】:

        不是 100% 肯定,但我认为您可以使用 R 中的 metafor 包做一些非常相似的事情,这是一个用于执行元分析的优秀包......也许值得一试。

        【讨论】:

        • 作为包作者,我很欣赏关于metafor 的积极cmet。但只是为了节省 OP 一点时间,metafor 没有提供任何功能可以满足 OP 的要求。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-09
        • 2021-10-08
        相关资源
        最近更新 更多