Giter Site home page Giter Site logo

nealhaddaway / citationchaser Goto Github PK

View Code? Open in Web Editor NEW
108.0 5.0 10.0 1.68 MB

Perform forward and backward citation chasing as part of an evidence synthesis project

Home Page: https://estech.shinyapps.io/citationchaser

R 100.00%
bibliometrics evidence-synthesis information-retrieval literature-review meta-analysis scientometrics searching systematic-mapping systematic-review systematic-searching

citationchaser's Introduction

citationchaser

In searching for research articles, we often want to obtain lists of references from across studies, and also obtain lists of articles that cite a particular study. In systematic reviews, this supplementary search technique is known as 'citation chasing': forward citation chasing looks for all records citing one or more articles of known relevance; backward ciation chasing looks for all records referenced in one or more articles.

Traditionally, this process would be done manually, and the resulting records would need to be checked one-by-one against included studies in a review to identify potentially relevant records that should be included in a review.

This package contains functions to automate this process by making use of the Lens.org API. An input article list can be used to return a list of all referenced records, and/or all citing records in the Lens.org database (consisting of PubMed, PubMed Central, CrossRef, Microsoft Academic Graph and CORE; 'https://www.lens.org').

USERS MUST OBTAIN A TOKEN FOR THE LENS.ORG SCHOLARLY API (available for free here). The API may be time limited, but not rate limited. Requests for tokens may need initial approval from The Lens.

A shiny app version of the package is available here. This version requires no Lens.org API and is immediately usable and ENTIRELY FREE.

Install the package using the following code: devtools::install_github("nealhaddaway/citationchaser")

Please cite as:
Haddaway, N. R., Grainger, M. J., Gray, C. T. 2021. citationchaser: An R package and Shiny app for forward and backward citations chasing in academic searching. doi: 10.5281/zenodo.4543513
Citation in .ris format (right click 'Save Link As')

DOI

GitHub all releases GitHub Release Date GitHub R package version GitHub last commit

GitHub Repo stars Twitter URL

citationchaser's People

Contributors

drmattg avatar jpeacock29 avatar nealhaddaway avatar qgeissmann avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

citationchaser's Issues

Add argument to define number of steps [feature request]

Hi @nealhaddaway,

As a feature request for this package, I would love to have an argument to define the number of steps away from the initial article(s) provided the function returns. So for example if steps = 1 and get_records = "citations", you get just the records cited by that reference. But if steps = 2, you get the records cited by that initial reference, and then records cited by the records cited by the original reference.

You can do this manually at the moment by taking the output of the initial run of the function and passing it back to get_refs(), but having it baked into the function (with appropriate deduplication) would be amazing!

0 day issue

Error: object 'vlookup' is not exported by 'namespace:expss' when I load package

Error when trying to install citation chaser

Currently getting this error :-/ Using devtools install_github("nealhaddaway/citationchaser"), R 4.0.0

Error: Failed to install 'citationchaser' from GitHub:
System command 'R' failed, exit status: 1, stdout + stderr (last 10 lines):
E> * checking DESCRIPTION meta-information ... ERROR
E> Malformed Authors@R field:
E> :6:53: unexpected ','
E> 5: email = "[email protected]",
E> 6: comment = c(ORCID = "0000-0003-3902-2234")),
E> ^
E>
E> See section 'The DESCRIPTION file' in the 'Writing R Extensions'
E> manual.

Ris upload

Allow ris upload in the shiny app with function for DOI extraction

Shinyapp version failed to load

I have used the Shiny app version a few times before. The last time I tried was about a month ago and it was working fine. However, it failed to load when I tried to open the app again today. Does anyone know why?

image

Lens.org token free trial query

Hi @nealhaddaway

This looks like a great package! One thing to flag from an "openness" point of view is that when I signed-up, Lens.org came back to say that I could have a free trial but would need to pay for institutional access after that. Might be worth flagging this (that you need to pay for persistent access) in the packages README?

Thanks for this request. You will be granted a 14-day free trial to enable you to download the data needed. You will receive shortly an email with instructions on how to generate your token. Please make sure to download your data within the allocated time. For any continued access, your library or your institution would need to take up a paid subscription to help support the public resource of the Lens and take advantage new added-value institutional tools. Please remember to read carefully the Lens data terms of use.

`save_object` is not implemented

Apologies if I am mistaken, but I don't believe this functionality is actually implemented. Setting the parameter to TRUE or FALSE does not seem to effect the output, and, from searching the code base, it doesn't appear the parameter is actually processed anywhere in the code.

Expand citation analysis (co-citation)

Build in analysis of second order citation network (citing/cited records for citation chaser results), prioritised by frequency of citations/co-citation

Error when using type = "lens_id"

[Last thing I promise!]

When trying to manually implement the step-wise functionality described in #3, I hit an issue in that the type = "lens_id" option doesn't seem to work:

# Get records citing our {robvis} paper
cit <-
  citationchaser::get_refs(
    article_list = "10.1002/jrsm.1411",
    get_records = "citations",
    type = "doi",
    token = <TOKEN>
  )

# Pass IDs of records identified by the initial run back to get_refs()
# Use type = "lens_id" as this is the only ID provided by the inital output 
cit2 <-
  citationchaser::get_refs(
    article_list = as.list(cit$citations_df$data.lens_id),
    type = "lens_id",
    get_records = "citations",
    token = <TOKEN>
  )

This gives:

Error in citationchaser::get_refs(article_list = as.list(cit$citations_df$data.lens_id),  : 
  Please provide articles in one of the following formats: "doi" (digital object identifier, in this format: "10.1186/s13750-018-0126-2"), "pmid" (PubMed ID), "pmcid" (PubMed Central ID), "magid" (Microsoft Academic ID), "coreid" (CORE identifier), lens_id" (The Lens.org ID), "title" (article title; much lower specificity)

Large requests raise an error when Sys.sleep is called

When large requests are made, CitationChaser pauses between requests to avoid overloading the LENS API. However, when Sys.sleep(60 - t) is hit, t is not defined (besides it's definition in base R as a matrix transpose...). I fixed this locally by replacing 60 - t with 20 (a fixed 20 second sleep period).

I can make a pull request with this fix, but I couldn't understand what the intended functionality was exactly. I noticed a t_ref was defined and measured the duration of the last API call.

Issue when importing .ris into mendeley

Hi,

I'm having issues when importing the resulting RIS file from citationchaser into mendeley, as the author order is wrong.

The issue seems to be the AU field in the RIS file.
Current RIS:

TY  - JOUR
AU  - Sánchez-Cordón, Pedro J.; Montoya, Maria; Reis, Ana Luisa; Dixon, Linda K.
TI  - African swine fever: A re-emerging viral disease threatening the global pig industry
...

Mendeley reads it correctly when it's the following format:

TY  - JOUR
A1  - Sánchez-Cordón, Pedro J.
A1  - Montoya, Maria
A1  - Reis, Ana Luisa
A1  - Dixon, Linda K.
TI  - African swine fever: A re-emerging viral disease threatening the global pig industry
...

Would it be possible to download in this format?

Support import of BibTex files

Besides RIS, BibTex files are the next most popular file formats.

Various tools like Connected Papers, Litmaps also export results only in BibTex but not RIS. While it's fairly simple to import Bibtex into a reference manager and export in RIS, would be nice if Citationchaser could support this directly.

`get_records = 'both'` is not implemented

Again, apologies if I'm missing something, but get_refs function does not appear to implement this functionality. For example, the following code returns NULL:

get_refs(c("10.1111/sum.12030"), save_object=TRUE, type = "doi", get_records="both",
token="XXX")

Furthermore, searching the code, I saw conditional branches for "references" and "citations", but "both" doesn't seem to be handled anywhere.

Add scite.ai tally contextual citation data to supplement citations

Issue

We'd (scite.ai) like to contribute a PR that uses, optionally, scite.ai tally citation classification data (Supporting, Disputing, Mentioning) to help users and ourselves get better-contextualized citations.

@nealhaddaway Is this something you would be open to?

Our current API docs are (https://documenter.getpostman.com/view/7840038/SzYaVdeo?version=latest#ece530f0-7316-457c-b48f-8205b4e9abb9) though we are working on newer ones.

Unclear how to combine ?dois=/?pmids=etc as worked example contains only doi

When running a review I often find I have mixed identifiers available for the included studies which I wish to review citations and references for. However, AMAZING though the citaitonchaser is, it would be even more amazing if we could run all included studies even with mixed identifiers, and find the list of all the Unique article IDs for citations for the complete group, instead of needing to download and then combine those for each ID type. Is it possible to add a note to the Readme explaining how to do this?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.