knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)
library(IPEDSuploadables)

The produce_ef1_report function requires 2 separate dataframes, one with row-level students and one with pre-aggregated retention counts.

The dataframes must follow the format described below

Student data requirements

  • One row per person
  • One IPEDS Unitid per file
  • Columns with values and types as described below in any order (additional columns are allowed)
  • Double-starred column names (**) are only required in years when IPEDS collects that information. In off-years, you can omit the columns or enter any placeholder value.

Column names can use any capitalization method you like. Do NOT include (**) in the column names.

#this chunk is only used during interactive session by the package maintainers, if the requirements have been updated

tryCatch(specs_EF1 <- googlesheets4::read_sheet("https://docs.google.com/spreadsheets/d/1XVcGKtrAwsgKRYvqrbzO13-w8_u3IB2oYft-F5Psxx4/edit", sheet = 1),
         error = function(x) message("Google Sheet unavailable"),
         warning = function(y) message("There was a warning"))
usethis::use_data(specs_EF1, overwrite = TRUE)
#figure out why striped isn't working when format = 'html'
load("../data/specs_EF1.rda")
library(magrittr)
specs_EF1$ACCEPTABLE_VALUES <- stringr::str_replace_all(specs_EF1$ACCEPTABLE_VALUES, pattern = "\\n", replacement = "<br>")
specs_EF1_students <- specs_EF1[specs_EF1$DATA_FRAME == 'students', 2:4]
knitr::kable(specs_EF1_students,
             format = 'html',
             escape = FALSE,
             col.names = c('Column Name', 'Column Type', 'Acceptable Value - Definition')) %>%
    kableExtra::kable_styling(bootstrap_options = "striped") %>%
  kableExtra::column_spec(2, italic = TRUE, width = '8em')

Retention data requirements

  • One row for full-time counts, one row for part-time counts
  • One IPEDS Unitid per file
  • Columns with values and types as described below in any order (additional columns are allowed)
#figure out why striped isn't working when format = 'html'
specs_EF1_retention <- specs_EF1[specs_EF1$DATA_FRAME == 'retention', 2:4]
knitr::kable(specs_EF1_retention,
             format = 'html',
             escape = FALSE,
             col.names = c('Column Name', 'Column Type', 'Acceptable Value - Definition'),
             row.names = FALSE) %>%
    kableExtra::kable_styling(bootstrap_options = "striped") %>%
  kableExtra::column_spec(column = 2, italic = TRUE, width = '8em', )

Student-faculty ratio

This information will be collected via pop-up box. Type the correct number for your institution's ratio when prompted.



AlisonLanski/IPEDSuploadables documentation built on Nov. 2, 2023, 10:54 a.m.