Conduct RISE Analysis

Implements techniques for educational resource inspection, selection, and evaluation (RISE) described in Bodily, Nyland, and Wiley (2017) . Automates the process of identifying learning materials that are not effectively supporting student learning in technology-mediated courses by synthesizing information about access to course content and performance on assessments.

Build Status CRAN_Status_Badge CRAN_Download_Badge status

This R package helps you conduct RISE analyses as described in the paper Bodily, R., Nyland, R., & Wiley, D. (2017). The RISE Framework: Using Learning Analytics to Automatically Identify Open Educational Resources for Continuous Improvement. International Review of Research on Distance and Open Learning, 18(2). DOI:

The purpose of a RISE analysis is to help an instructional designer / learning scientist / course developer / instructor quickly identify portions of a course that aren't supporting learning as effectively as they would like. When course materials are licensed as open educational resources, materials identified through RISE analysis can be iteratively enhanced through a process of continuous improvement. Special attention should be given to outcomes classified in quadrant four (at the bottom right), where students are spending more time than average using resources but performing below average on associated assessments. For more detail, please refer to the article.

Before a RISE analysis can be performed, a course must have:

  • clearly defined learning outcomes,
  • each piece of content (text, video, interactive, etc.) aligned to an outcome,
  • each individual assessment item aligned to an outcome, and
  • data about content use and assessment performance by outcome.


You can install the stable version of rise from CRAN with:


You can also install the latest development version of the RISE package using:



The rise package expects a data frame containing three columns:

  • outcome name
  • average score on all assessments aligned with the outcome
  • average views of each learning resource aligned with the outcome

The package expects these columns in this order. Pre-process your data in order to conform to this format and you're ready to perform the RISE analysis.

The following example contains a toy data set so you can explore the features of the package.

# Create sample data
# Sample outcomes licensed CC BY from
outcomes <- c("List the defining characteristics of biological life",
"Describe classification and organizational tools biologists use, including modern taxonomy",
"Identify the main branches of biology",
"Describe biology as a science and identify the key components of scientific inquiry",
"Define atoms and elements",
"Classify different types of atomic bonds",
"Demonstrate familiarity with the pH scale")
# Sample scores
avg_scores <- runif(7, min=50, max=100)
# Sample views
avg_views <- runif(7, min=0.5, max=1.5)
sample_df <- data.frame(outcomes, avg_scores, avg_views)
rise_df <- rise(sample_df)
rise_graphic <- rise(sample_df, visual = TRUE)


The rise package is licensed under an MIT license. See the LICENSE and files for additional details.



If you use the RISE package while conducting research that you publish, you can cite the package as:

Wiley, (2018). RISE: An R package for RISE analysis. Journal of Open Source Software, 3(28), 846,


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.4 by David Wiley, 3 years ago

Report a bug at

Browse source code at

Authors: David Wiley [aut, cre] , Lumen Learning [cph]

Documentation:   PDF Manual  

MIT + file LICENSE license

Depends on ggplot2, dplyr, stats

Suggests testthat

See at CRAN