Skip to content

henrikkarlstrom/rcristin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rcristin

Travis build status

rcristin is a simple R interface to query the API for the Cristin database for Cristin results, with error handling and automatic pagination. See full documentation of the package at https://henrikkarlstrom.github.io/rcristin/index.html.

rcristin (currently) consists of two functions: one for retrieving registered Cristin results and one for their associated author affiliation information. Both functions always return a data frame.

Installation

You can install the development version from GitHub with:

# install.packages("devtools")
devtools::install_github("henrikkarlstrom/rcristin")

Example

A simple query for academic publications from a unit, which is stored as a data frame:

library(rcristin)
## get Cristin results from NTNU's University Library
ntnuub <- get_cristin_results(
  unit = "194.14.30.0", 
  published_since = 2015
  )

This can now be used for all sors of bibliometric analyses. Here is a table of the ten most common publication categories for the University Library of NTNU:

table <- dplyr::count(ntnuub, category_name_en, sort = TRUE)

knitr::kable(head(table, 10), col.names = c("Cristin category", "Number of Cristin posts"))
Cristin category Number of Cristin posts
Lecture 99
Website (informational material) 47
Academic lecture 46
Interview 41
Popular scientific lecture 38
Academic article 27
Other presentation 19
Poster 17
Popular scientific article 12
Museum exhibition 11

And here is a graph of the Open Access status of the academic publications of the library:

# Filtering out the non-academic results
ntnuub <- ntnuub[ntnuub$category_code %in% c(
  "ACADEMICREVIEW", "ANTHOLOGYACA", "ARTICLE",
  "CHAPTERACADEMIC", "MONOGRAPHACA"), ]

# Giving the OA categories better names
ntnuub$open_access <- dplyr::recode(ntnuub$open_access,
                                    none = "Not archived",
                                    green = "Archived",
                                    gold = "Gold OA")

# Plotting
ggplot2::ggplot(
  data = ntnuub,
  ggplot2::aes(
    x = year_published,
    fill = forcats::fct_relevel(
      open_access, c("Gold OA", "Archived", "Not archived"))
    )
  ) +
  ggplot2::geom_bar() +
  ggplot2::geom_hline(yintercept = 0,
             size = 1,
             colour = "#565657") +
  ggplot2::labs(
    title = "Open Access status, NTNU University Library publications",
    subtitle = "2015-2020",
    x = NULL,
    y = NULL
    ) +
  ggplot2::theme_minimal() +
  ggplot2::theme(
    plot.title.position = "plot",
    legend.title = ggplot2::element_blank(),
    legend.text = ggplot2::element_text(size = 12,
                                   color = "#565657"),
    axis.ticks = ggplot2::element_blank(),
    panel.grid.minor = ggplot2::element_blank(),
    panel.grid.major.y = ggplot2::element_line(color="grey95"),
    panel.grid.major.x = ggplot2::element_blank(),
    panel.background = ggplot2::element_blank()
    ) +
  ggplot2::ylim(0, 15) +
  ggplot2::scale_fill_manual(
    values = c("#f7d019", "forestgreen", "grey85")
    )

About

Interact with the Cristin API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages