An open API service indexing awesome lists of open source software.

https://github.com/robjhyndman/Rcademy


https://github.com/robjhyndman/Rcademy

Last synced: 5 months ago
JSON representation

Awesome Lists containing this project

README

        

---
output: github_document
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
cache = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```

# Rcademy

[![CRAN status](https://www.r-pkg.org/badges/version/rcademy)](https://CRAN.R-project.org/package=rcademy)
[![R build status](https://github.com/ropenscilabs/rcademy/workflows/R-CMD-check/badge.svg)](https://github.com/ropenscilabs/rcademy/actions)
[![R-CMD-check](https://github.com/robjhyndman/rcademy/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/robjhyndman/rcademy/actions/workflows/R-CMD-check.yaml)

This package was developed during _ozunconf19_ and _numbat hackathon 2020_, to provide tools and ideas that will help gather the information required to apply for _academic promotion_.

This document was produced by Chris Brown, Belinda Fabian, Rob Hyndman, Maria Prokofiave, Nick Tierney, Huong Ly Tong, and Melina Vidoni,

## Installation

You can install the development version from [GitHub](https://github.com/) with:

``` r
# install.packages("devtools")
devtools::install_github("ropenscilabs/Rcademy")
```

## Applications for promotion

Typically, an application for academic promotion will require you to provide evidence of your performance in Research, Teaching, Engagement and (for senior appointments) Leadership. The rest of this document summarises what sort of things you could include in each of these sections.

## Research

For research, you will need a list of publications, the number of citations, and the ranking of the journals in which you have published

You can obtain a list of your publication from various sources, either a bib file, or from an online list such as PubMed, Google Scholar or Orcid. Normally you would only need to use one of these.

```{r}
library(tidyverse)
library(rcademy)
```

```r
mypubs_bib <- read_bib("mypubs.bib")
mypubs_pubmed <- read_pubmed("Rob Hyndman")
mypubs_scholar <- read_scholar("vamErfkAAAAJ")
mypubs_orcid <- read_orcid("0000-0002-2140-5352")
```

Each of these functions will return a tibble, with one row per publication and the columns providing information such as title, authors, year of publication, etc. The different sources provide some different information, and it is often useful to combine them. We will use the last two of these (from Google Scholar and ORCID) in the following examples.

```{r mypubs, echo=FALSE, eval=FALSE}
mypubs_orcid <- read_orcid("0000-0002-2140-5352")
readr::write_rds(mypubs_orcid, "data-raw/rjhorcid.rds", compress="bz2")
mypubs_scholar <- read_scholar("vamErfkAAAAJ")
readr::write_rds(mypubs_scholar, "data-raw/rjhscholar.rds", compress="bz2")
```

```{r readmypubs, echo=FALSE}
mypubs_orcid <- readr::read_rds("data-raw/rjhorcid.rds")
mypubs_scholar <- readr::read_rds("data-raw/rjhscholar.rds")
```

```{r showpubs}
mypubs_orcid
mypubs_scholar
```

In general, ORCID will provide higher quality data, along with DOIs, but has no citation information and covers fewer publications than Google Scholar. A few papers may have two DOIs --- for example, when they appear on both JStor and a journal website. We will remove these.

```{r duplicates}
library(tidystringdist)
dups <- mypubs_orcid |>
select(title, year) |>
mutate_all(tolower) |>
duplicated()
mypubs_orcid <- mypubs_orcid |> filter(!dups)
```

We will try to combine the two tibbles using fuzzy joining on the title and year fields.

```{r join}
mypubs <- mypubs_scholar |>
# First remove any publications without years
filter(!is.na(year)) |>
# Now find matching entries
fuzzyjoin::stringdist_left_join(mypubs_orcid,
by = c(title = "title", year = "year"),
max_dist = 2, ignore_case = TRUE) |>
# Keep any columns where ORCID missing
mutate(
title.y = if_else(is.na(title.y), title.x, title.y),
journal.y = if_else(is.na(journal.y), journal.x, journal.y),
year.y = if_else(is.na(year.y), year.x, year.y),
) |>
# Keep the ORCID columns
select(!ends_with(".x")) |>
rename_all(~str_remove_all(.x,".y"))
mypubs
```

You can add journal rankings for each publication, choosing between ABDC, CORE and SCImago.

```{r rankings, warning=FALSE, eval=FALSE}
mypubs <- mypubs |>
mutate(
abdc_ranking = rank_abdc(journal),
core_ranking = rank_core(journal),
scimago_ranking = rank_scimago(journal)
)
```

Then you can create a table of the number of papers by rank.

```{r rankingsummary, eval=FALSE}
mypubs |>
filter(!is.na(abdc_ranking)) |>
count(abdc_ranking)
```

The tibble contains Google scholar citations for all papers, you can use the data obtained with `read_scholar()` which contains a `cites` column. We can also obtain CrossRef citations via the `citations()` function which uses the DOI codes.

```{r scholarcites}
mypubs |>
mutate(cr_cites = citations(doi)) |>
select(title, year, cites, cr_cites) |>
arrange(desc(cites))
```

Altmetrics can also be useful. For this, you will need the list of your DOIs.

```{r altmetrics}
mypubs |>
get_altmetrics(doi) |>
select(title, cited_by_tweeters_count) |>
arrange(desc(cited_by_tweeters_count))
```

The `scholar` package provides tools for obtaining your profile information.

```{r scholarprofile}
scholar::get_profile("vamErfkAAAAJ")
```

## Teaching

The teaching section will usually involve collecting data on your teaching performance and teaching innovations.

#### Teaching performance

- Student evaluations
- Emails from grateful students
- Peer review reports

#### Teaching innovations

- Development of new subjects or degrees
- New teaching methods or materials

#### Supervision

- Honours students supervised
- Masters students supervised
- PhD students supervised

Note that a list of PhD students may go in the Research section rather than the Teaching section.

## Engagement

This section includes suggestions for engagement activities that could be included in academic promotion applications. These examples are indicative only and do not provide a list of expectations. Engagement is interpreted in a broad sense to include discipline, industry, government and community engagement.

#### Engagement with Industry

- Partnerships with organisations: for profit, not-for-profit, volunteering
- Consulting projects -> could list value of projects, reports completed
- Participation in project development programs e.g. CSIRO On Prime
- Patents
- Service on industry boards and/or committees at the local, state or national level

#### Engagement with Government

- Policy development, such as changes resulting from your work
- Advocacy programs e.g. Science Meets Parliament
- Service with government bodies

#### Engagement with Public

- Public presentations - list of locations
- Blogging (own blog or collaborative), with stats available from blog backend e.g. views, visitors, followers.
- Twitter. Such as number of followers from profile, [Twitter analytics](https://analytics.twitter.com) shows impressions, engagement rate, likes, retweets, replies (only allows viewing of the last 90 days of data).
- Community programs e.g. National Science Week, etc.
- Media appearances e.g. appearances on TV, radio, web.
- Writing for general audience e.g. The Conversation, university news platforms (e.g. The Lighthouse).
- Public works e.g. art installations, consulting on museum exhibit.
- Service on community boards and/or committees at the local, state or national level.

#### Engagement with Professional Community

- Contributions to community support websites e.g. Stack Overflow
- Data science competitions e.g. Kaggle
- Community engagement projects e.g. citizen science
- Community development e.g. meetup groups, RLadies, rOpenSci, hackathons
- Creation of software packages/tools for open use

#### Engagement with Schools

- Curriculum development e.g. STEM at School.
- Interactions with school students e.g. Skype a Scientist (discussing science with students).
- University events e.g. Open Day.

#### Contributions to enhancing the employability of graduates

- Establishing student links with industry/professional societies.
- Participating in professional practice teaching e.g. teamwork, communication, problem solving, grant writing.

#### Engagement/leadership within one’s profession or discipline

- Professional society membership & activity.
- Membership of professional or foundation boards/councils
- Peer review _(It should go into the research section)_. This can include: journal article review, ARC college of experts, grant review panels.

## Leadership

This section includes examples of leadership activities in academic promotion applications.

- University committee (e.g. department, faculty, university-level). List how many events/meetings you have in a year.
- Board membership, and list position, length of service.
- Conference organisation. List your role (e.g. scientific committee, symposium chair), scale of conference (e.g number of attendees, funding, international/local).
- Leading projects and initiatives (e.g. sustainability, diversity inclusion initiatives).
- Event organisation (e.g. writing retreat).
- Training events (e.g. university management course). List the course, completion date.
- Leadership roles in external professional or industry associations
- Mentoring. List how many mentees you have, length of relationship, where they are working now.