This document summarizes the results of a survey of Psychology Department graduate students conducted in 2017. It concerns the quantitative methods courses they have taken, and wish to have offered in the future.
quant_surv_df <- readr::read_csv("csv/quant_course_survey-2017-clean.csv")
## Rows: 23 Columns: 9
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (3): Course, Source, Status
## dbl (6): Took_psy, Took_oth, Took_nev, Offer_reg, Offer_summ, Offer_no
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
str(quant_surv_df)
## spc_tbl_ [23 × 9] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ Course : chr [1:23] "Structural Equation Modeling" "Multivariate stats" "Longitudinal Data Analysis" "Multi-Level Modeling" ...
## $ Source : chr [1:23] "survey" "survey" "survey" "survey" ...
## $ Took_psy : num [1:23] 2 7 1 17 5 1 0 0 0 2 ...
## $ Took_oth : num [1:23] 27 11 10 7 5 4 3 3 2 2 ...
## $ Took_nev : num [1:23] 24 34 41 29 41 46 48 47 50 47 ...
## $ Offer_reg : num [1:23] 49 46 37 47 32 25 21 9 19 7 ...
## $ Offer_summ: num [1:23] 3 6 15 5 17 25 20 38 27 26 ...
## $ Offer_no : num [1:23] 1 1 1 0 4 3 11 6 6 16 ...
## $ Status : chr [1:23] "Periodically" "Periodically" "HDFS" "Periodically" ...
## - attr(*, "spec")=
## .. cols(
## .. Course = col_character(),
## .. Source = col_character(),
## .. Took_psy = col_double(),
## .. Took_oth = col_double(),
## .. Took_nev = col_double(),
## .. Offer_reg = col_double(),
## .. Offer_summ = col_double(),
## .. Offer_no = col_double(),
## .. Status = col_character()
## .. )
## - attr(*, "problems")=<externalptr>
quant_surv_df %>%
dplyr::select(., Course, Took_psy, Took_oth) %>%
dplyr::mutate(., Took_total = Took_psy + Took_oth) %>%
dplyr::filter(., Took_total > 0) %>%
dplyr::arrange(., desc(Took_total)) %>%
knitr::kable(., format = "html", escape = FALSE) %>%
kableExtra::kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
kableExtra::scroll_box(width="800px")
Course | Took_psy | Took_oth | Took_total |
---|---|---|---|
Structural Equation Modeling | 2 | 27 | 29 |
Multi-Level Modeling | 17 | 7 | 24 |
Multivariate stats | 7 | 11 | 18 |
Longitudinal Data Analysis | 1 | 10 | 11 |
Psychometrics | 5 | 5 | 10 |
fMRI Data Analysis | 8 | 2 | 10 |
Data Visualization and Management | 10 | 0 | 10 |
Foundations of Programming | 6 | 2 | 8 |
Network Analysis | 1 | 4 | 5 |
Machine Learning | 2 | 2 | 4 |
Dynamic Systems Modeling | 0 | 3 | 3 |
Missing Data Analysis | 0 | 3 | 3 |
Nonparametric stats | 2 | 1 | 3 |
Research Reproducibility | 3 | 0 | 3 |
Person Specific Data Analysis | 0 | 3 | 3 |
Computational Modeling | 0 | 2 | 2 |
Bayesian Analysis | 0 | 2 | 2 |
R | 0 | 1 | 1 |
Latent Class Analysis | 0 | 1 | 1 |
Item Response Theory | 0 | 1 | 1 |
Time Series Analysis | 0 | 1 | 1 |
The following table calculates a Most_popular
variable
equal to Offer_reg + Offer_summ - Offer_no
then sorts on
it.
quant_surv_df %>%
dplyr::mutate(., Most_popular = Offer_reg + Offer_summ - Offer_no) %>%
dplyr::mutate(., Offer_total = Offer_reg + Offer_summ) %>%
dplyr::filter(., Offer_total > 0) %>%
dplyr::arrange(., desc(Offer_total)) %>%
dplyr::select(.,
Course,
Offer_reg,
Offer_summ,
Offer_total,
Offer_no,
Most_popular,
Status) %>%
dplyr::mutate(., Status = kableExtra::cell_spec(Status,
'html', color = ifelse(
Status == "Not_offered",
"red",
ifelse(Status %in% c("2022"), "green", "orange")
))) %>%
knitr::kable(., format = "html", escape = FALSE) %>%
kableExtra::kable_styling(bootstrap_options = c("striped", "hover", "condensed")) %>%
kableExtra::scroll_box(width = "800px")
Course | Offer_reg | Offer_summ | Offer_total | Offer_no | Most_popular | Status |
---|---|---|---|---|---|---|
Structural Equation Modeling | 49 | 3 | 52 | 1 | 51 | Periodically |
Multivariate stats | 46 | 6 | 52 | 1 | 51 | Periodically |
Longitudinal Data Analysis | 37 | 15 | 52 | 1 | 51 | HDFS |
Multi-Level Modeling | 47 | 5 | 52 | 0 | 52 | Periodically |
Data Visualization and Management | 25 | 27 | 52 | 1 | 51 | Not_offered |
Network Analysis | 25 | 25 | 50 | 3 | 47 | SoDA |
Psychometrics | 32 | 17 | 49 | 4 | 45 | 2022 |
Foundations of Programming | 22 | 26 | 48 | 4 | 44 | Not_offered |
Missing Data Analysis | 9 | 38 | 47 | 6 | 41 | HDFS |
Computational Modeling | 19 | 27 | 46 | 6 | 40 | HDFS |
fMRI Data Analysis | 24 | 20 | 44 | 7 | 37 | 2022 |
Nonparametric stats | 17 | 27 | 44 | 7 | 37 | Not_offered |
Research Reproducibility | 12 | 30 | 42 | 9 | 33 | Periodically |
Dynamic Systems Modeling | 21 | 20 | 41 | 11 | 30 | HDFS |
Machine Learning | 7 | 26 | 33 | 16 | 17 | IST |
Latent Class Analysis | 4 | 1 | 5 | 0 | 5 | Sociology |
Person Specific Data Analysis | 1 | 1 | 2 | 1 | 1 | HDFS |
Bayesian Analysis | 2 | 0 | 2 | 0 | 2 | Not_offered |
R | 2 | 0 | 2 | 0 | 2 | Periodically |
Item Response Theory | 2 | 0 | 2 | 0 | 2 | Not_offered |
Mixture Models | 0 | 1 | 1 | 0 | 1 | Not_offered |
Ecological Momentary Assessment | 1 | 0 | 1 | 0 | 1 | HDFS |