Skip to main content

Turbocharge a PubMed literature search using citation data from the NIH

Project description

PubMed ID (PMID) Cite

Tweet CodeQL Latest PyPI version DOI

pmidcite summary

Turbocharge a PubMed literature search with the command, icite, rather than clicking and clicking and clicking on Google Scholar "Cited by N" links.

This open-source project is part of a peer-reviewed commentary that was invited by the editors of Research Synthesis Methods. Please Cite if you use pmidcite in your research or literature search.

Contact: dvklopfenstein@protonmail.com

PubMed and NIH Citation data

PubMed contains peer-reviewed research papers in biomedicine, biochemistry, chemistry, behavioral science, and other life sciences. Citation data is downloaded each time icite is run from the National Institutes of Health (NIH) and includes:

  • Citation counts of all papers and clinical papers
  • Performance of a paper among its peer papers
  • Existence of MeSH terms for the human, animal, and molecular/cellular categories

Table of Contents

1) Download citation counts and data for a research paper

$ icite -H 26032263

  • This paper (PMID 26032263) has 25 citations, 10 references, and 4 authors.
  • This paper is performing well (74th percentile in column %) compared to its peers.

Starting usage

NIH percentile

This paper is performing well (74th percentile) compared to its peers (column %).

The NIH percentile grouping (column G) helps to highlight the better performing papers in groups 2, 3, and 4 by sorting the citing papers by group first, then publication year.

The sort places the lower performing papers in groups 0 or 1 at the back.

New papers appear at the beginning of a sorted list, no matter how many citations they have to better facilitate researchers in finding the latest discoveries.

The grouping of papers by NIH percentile grouping is a novel feature created by dvklopfenstein for this project.

2) Forward citation search

pmidcite summary

Also known as following a paper's Cited by links or Forward snowballing

icite -H; icite 26032263 --load_citations | sort -k6 -r
or
icite -H; icite 26032263 -c | sort -k6 -r

3) Backward citation search

Also known as following links to a paper's references or Backward snowballing

pmidcite summary

$ icite -H; icite 26032263 --load_references | sort -k6 -r
or
$ icite -H; icite 26032263 -r | sort -k6 -r

4) Summarize a group of citations

Create a file containing numerous PMIDs annotated with icite info

$ icite 30022098 -c -o goatools_cites.txt
  WROTE: goatools_cites.txt

Count the number of lines in the file

$ wc -l goatools_cites.txt
468 goatools_cites.txt

Summarize the papers in "goatools_cites.txt"

$ sumpaps goatools_cites.txt
i=026.9% 4=003.0% 3=018.9% 2=028.8% 1=015.9% 0=006.5%   6 years:2018-2024   465 papers goatools_cites.txt
  • The output is on one line so many files containing sets of PMIDs may be compared
  • The groups are from newest(i) to top-performing(4), great(3), very good(2), and overlooked(1 and 0)

5) Download citations for all papers returned from a PubMed search

  1. Do a search in PubMed
  2. Save all results into a file containing all PMIDs found by the search
  3. Download the list of PMIDs
  4. Run icite to analyze all the PMIDs

1. Do a search in PubMed

pmidcite summary

2. Save all results into a list of PMIDs

pmidcite summary

3. Download the list of PMIDs

pmidcite summary

4. Run icite to analyze all the PMIDs

$ icite -i pmid-HIVANDDNAm-set.txt -o pmid-HIVANDDNAm-icite.txt
$ grep TOP pmid-HIVANDDNAm-icite.txt | sort -k6

Command Line Interface (CLI)

A Command-Line Interface (CLI) can be preferable to a Graphical User Interface (GUI) because:

  • processing can be automated from a script
  • time-consuming mouse clicking is reduced
  • more data can be seen at once on a text screen than in a browser, giving the researcher a better overall impression of the full set of information [1]

Researchers who use Linux or Mac already work from the command line. Researchers who use Windows can get that Linux-like command line feeling while still running native Windows programs by downloading Cygwin from https://www.cygwin.com/ [1].

PubMed vs Google Scholar

Google Scholar vs PubMed

In 2013, Boeker et al. [6] recommended that a scientific search interface contain five integrated search criteria. PubMed implements all five, while Google did not in 2013 or today.

Google's highly popular implementation of the forward citation search through their ubiquitous "Cited by N" links is a "Better" experience than the PubMed's "forward citation search" implementation.

But if your research is in the health sciences and you are amenable to working from the command line, you can use PubMed in your browser plus citation data downloaded from the NIH using the command-line using pmidcite. The NIH's citation data includes a paper's ranking among its co-citation network.

What is in PubMed? Take a quick tour

PubMed Contents

PubMed is a search interface and toolset used to access over 30.5 million article records from databases such as:

  • MEDLINE: a highly selective database started in the 1960s
  • PubMed Central (PMC): an open-access database for full-text papers that are free of cost
  • Additional content such as books and articles published before the 1960s

Installation

To install from PyPI
$ pip3 install pmidcite

To install locally

$ git clone https://github.com/dvklopfenstein/pmidcite.git
$ cd ./pmidcite
$ pip3 install .

Setup

Save your literature search in a GitHub repo.

1. Add a pmidcite init file

Add a .pmidciterc init file to a non-git managed directory, such as home (~)

$ icite --generate-rcfile | tee ~/.pmidciterc
[pmidcite]
email = myname@email.edu
# To download PubMed search results, get an NCBI API key here:
# https://ncbiinsights.ncbi.nlm.nih.gov/2017/11/02/new-api-keys-for-the-e-utilities
apikey = MY_LONG_HEX_NCBI_API_KEY
tool = my_scripts
$ export PMIDCITECONF=~/.pmidciterc

Do not version manage the .pmidciterc using a tool such as GitHub because it contains your personal email and your private NCBI API key.

2. NCBI E-Utils API key

To download PubMed abstracts and PubMed search results using NCBI's E-Utils, get an NCBI API key using these instructions:
https://ncbiinsights.ncbi.nlm.nih.gov/2017/11/02/new-api-keys-for-the-e-utilities

Set the apikey value in the config file: ~/.pmidciterc

Contributing

See the contributing guide for detailed instructions on how to get started contributing to the pmidcite project.

Contact

email: dvklopfenstein@protonmail.com
https://orcid.org/0000-0003-0161-7603

How to Cite

If you use pmidcite in your research or literature search, please cite paper 1 (pmidcite) and paper 3 (NIH citation data).

Please also consider reading and citing Gusenbauer's response (paper 2) about improving search for all during the information avalanche of these times:

  1. The pmidcite paper:
    Commentary to Gusenbauer and Haddaway 2020: Evaluating Retrieval Qualities of PubMed and Google Scholar
    Klopfenstein DV and Dampier W
    2020 | Research Synthesis Methods | PMID: 33031632 | DOI: 10.1002/jrsm.1456 | pdf

  2. Gusenbauer's response to the pmidcite paper:
    What every Researcher should know about Searching – Clarified Concepts, Search Advice, and an Agenda to improve Finding in Academia
    Gusenbauer M and Haddaway N
    2020 | Research Synthesis Methods | PMID: 33031639 | DOI: 10.1002/jrsm.1457 | pdf

  3. The NIH citation data used by pmidcite -- Scientific Influence, Translation, and Citation counts:
    The NIH Open Citation Collection: A public access, broad coverage resource
    Hutchins BI ... Santangelo GM
    2019 | PLoS Biology | PMID: 31600197 | DOI: 10.1371/journal.pbio.3000385

References

Please consider reading and citing the paper [4] which inspired the creation of pmidcite [1] and the authors' response to our paper [2]:

  1. Which Academic Search Systems are Suitable for Systematic Reviews or Meta-Analyses? Evaluating Retrieval Qualities of Google Scholar, PubMed and 26 other Resources
    Gusenbauer M and Haddaway N
    2019 | Research Synthesis Methods | PMID: 31614060 | DOI: 10.1002/jrsm.1378

Mentioned in this README are also these outstanding contributions:

  1. Relative Citation Ratio (RCR): A New Metric That Uses Citation Rates to Measure Influence at the Article Level
    Hutchins BI, Xin Yuan, Anderson JM, and Santangelo, George M.
    2016 | PLoS Biology | PMID: 27599104 | DOI: 10.1371/journal.pbio.1002541

  2. Google Scholar as replacement for systematic literature searches: good relative recall and precision are not enough
    Boeker M et al.
    2013 | BMC Medical Research Methodology | PMID: 24160679 | DOI: 10.1186/1471-2288-13-131

  3. Best Match: New relevance search for PubMed
    Fiorini N ... Lu Zhiyong
    2018 | PLoS Biology | PMID: 30153250 | DOI: 10.1371/journal.pbio.2005343

PDFs

Contact

dvklopfenstein@protonmail.com
https://orcid.org/0000-0003-0161-7603

Copyright (C) 2019-present pmidcite, DV Klopfenstein, PhD. All rights reserved.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pmidcite-0.0.48-py2.py3-none-any.whl (2.6 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file pmidcite-0.0.48-py2.py3-none-any.whl.

File metadata

  • Download URL: pmidcite-0.0.48-py2.py3-none-any.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for pmidcite-0.0.48-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ace4d2f6e91a2ec9257e847695b2ecaab9a96216bca5ecf9d31552c8c38d859b
MD5 e68de6a62bebf64549f0ecab0ccabb8b
BLAKE2b-256 090d65e8e82c82333191d043a198a80052eb353a7490b9b07db9c2b068457da4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page