Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
ldavies99 committed Jan 4, 2024
2 parents c753f2e + bc8ba75 commit efb0f90
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 35 deletions.
8 changes: 7 additions & 1 deletion R/frequency-tables.R
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@ sample_sizes <- function(data) {
list(
all = nrow(data),
code_at_work = sum(!is.na(data$code_freq) & data$code_freq != "Never"),
can_code = sum(data$code_freq != "Never" | (data$other_coding_experience == "Yes" & data$prev_coding_experience != "No")),
other_code_experience = sum(!is.na(data$other_coding_experience ) & data$other_coding_experience == "Yes"),
heard_of_RAP = sum(!is.na(data$heard_of_RAP) & data$heard_of_RAP == "Yes"),
not_RAP_champ = sum(is.na(data$know_RAP_champ) | data$know_RAP_champ != "I am a RAP champion")
Expand Down Expand Up @@ -579,6 +578,13 @@ summarise_ability_change <- function(data) {

frequencies <- calculate_freqs(data, questions, levels)

frequencies$value <- frequencies$value %>%
dplyr::recode_factor("It has become significantly worse" = "Significantly worse",
"It has become slightly worse" = "Slightly worse",
"It has stayed the same" = "Stayed the same",
"It has become slightly better" = "Slightly better",
"It has become significantly better" = "Significantly better")

return(frequencies)

}
Expand Down
38 changes: 19 additions & 19 deletions R/question-routing.R
Original file line number Diff line number Diff line change
Expand Up @@ -30,27 +30,27 @@ apply_skip_logic <- function(data) {
data$heard_of_RAP == "No",
data$have_RAP_champ != "Yes" & !is.na(data$have_RAP_champ) & data$have_RAP_champ != "test")

skipped_cols <- list(dplyr::select(data, "CS_grade":"ONS_directorate"),
dplyr::select(data, "CS_grade":"Northern_Ireland_NHS_organisation"),
dplyr::select(data, "ONS_directorate":"Northern_Ireland_NHS_organisation"),
dplyr::select(data, "pay_band":"Northern_Ireland_NHS_organisation"),
dplyr::select(data, "NHS_band"),
dplyr::select(data, "NHS_band":"NJC_grade"),
dplyr::select(data, "NJC_grade"),
dplyr::select(data, "England_NHS_organisation"),
dplyr::select(data, "England_NHS_organisation":"Scotland_NHS_organisation"),
dplyr::select(data, "England_NHS_organisation":"Wales_NHS_organisation"),
dplyr::select(data, "Scotland_NHS_organisation":"Northern_Ireland_NHS_organisation"),
dplyr::select(data, "Wales_NHS_organisation":"Northern_Ireland_NHS_organisation"),
dplyr::select(data, "Northern_Ireland_NHS_organisation"),
dplyr::select(data, "qual_1_subject":"qual_3_learn_code"),
dplyr::select(data, "other_coding_experience":"reproducible_workflow"),
dplyr::select(data, "first_learned":"coding_ability_change"),
dplyr::select(data, "have_RAP_champ":"RAP_comments"),
dplyr::select(data, "know_RAP_champ"))
skipped_cols <- list(colnames(dplyr::select(data, "CS_grade":"ONS_directorate")),
colnames(dplyr::select(data, "CS_grade":"Northern_Ireland_NHS_organisation")),
colnames(dplyr::select(data, "ONS_directorate":"Northern_Ireland_NHS_organisation")),
colnames(dplyr::select(data, "pay_band":"Northern_Ireland_NHS_organisation")),
colnames(dplyr::select(data, "NHS_band")),
colnames(dplyr::select(data, "NHS_band":"NJC_grade")),
colnames(dplyr::select(data, "NJC_grade")),
colnames(dplyr::select(data, "England_NHS_organisation")),
colnames(dplyr::select(data, "England_NHS_organisation":"Scotland_NHS_organisation")),
colnames(dplyr::select(data, "England_NHS_organisation":"Wales_NHS_organisation")),
colnames(dplyr::select(data, "Scotland_NHS_organisation":"Northern_Ireland_NHS_organisation")),
colnames(dplyr::select(data, "Wales_NHS_organisation":"Northern_Ireland_NHS_organisation")),
colnames(dplyr::select(data, "Northern_Ireland_NHS_organisation")),
colnames(dplyr::select(data, "qual_1_subject":"qual_3_learn_code")),
colnames(dplyr::select(data, "other_coding_experience":"reproducible_workflow")),
colnames(dplyr::select(data, "first_learned":"coding_ability_change")),
colnames(dplyr::select(data, "have_RAP_champ":"RAP_comments")),
colnames(dplyr::select(data, "know_RAP_champ")))

for(i in 1:length(conditions)){
data <- enforce_skip_logic(data, conditions[[i]], colnames(skipped_cols[[i]]))
data <- enforce_skip_logic(data, conditions[[i]], skipped_cols[[i]])
}

return(data)
Expand Down
4 changes: 2 additions & 2 deletions quarto/main/summary.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -178,11 +178,11 @@ Half of respondents learned to code for the first time in education. Nevertheles

```{r}
plot <- CARS::plot_freqs(tables$where_learned, n = samples$can_code,
plot <- CARS::plot_freqs(tables$where_learned, n = samples$code_at_work,
xlab = "Where learned", font_size = 14,
orientation = "h")
table <- CARS::df_to_table(tables$where_learned,
n = samples$can_code,
n = samples$code_at_work,
column_headers = c("Where learned",
"Percent"))
Expand Down
6 changes: 3 additions & 3 deletions quarto/templates/summary.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,8 @@ These data only show where people first learned to code. They do not show all th

```{r}
plot <- CARS::plot_freqs(tables$where_learned, n = samples$can_code, xlab = "Where learned", font_size = 14, orientation = "h")
table <- CARS::df_to_table(tables$where_learned, n = samples$can_code, column_headers = c("Where learned", "Percent"))
plot <- CARS::plot_freqs(tables$where_learned, n = samples$code_at_work, xlab = "Where learned", font_size = 14, orientation = "h")
table <- CARS::df_to_table(tables$where_learned, n = samples$code_at_work, column_headers = c("Where learned", "Percent"))
CARS::wrap_outputs("where-learned", plot, table)
Expand Down Expand Up @@ -239,7 +239,7 @@ Respondents were asked whether they use reproducible workflow packages. Responde
```{r}
plot <- CARS::plot_freqs(tables$rep_workflow, n = samples$code_at_work, break_q_names_col = "value", xlab = "Use reproduciable workflow packages", font_size = 14)
table <- CARS::df_to_table(tables$rep_workflow, n = samples$code_at_work, column_headers = c("Use reproduciable workflow packages", "Percent"))
table <- CARS::df_to_table(tables$rep_workflow, n = samples$code_at_work, column_headers = c("Use reproducible workflow packages", "Percent"))
CARS::wrap_outputs("rep-workflow", plot, table)
Expand Down
20 changes: 10 additions & 10 deletions tests/testthat/test-summarise_ability_change.R
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,16 @@ test_that("summarise_ability_change output is as expected", {

got <- summarise_ability_change(dummy_data)

expected <- data.frame(value = factor(c("It has become significantly worse",
"It has become slightly worse",
"It has stayed the same",
"It has become slightly better",
"It has become significantly better"),
levels = c("It has become significantly worse",
"It has become slightly worse",
"It has stayed the same",
"It has become slightly better",
"It has become significantly better")),
expected <- data.frame(value = factor(c("Significantly worse",
"Slightly worse",
"Stayed the same",
"Slightly better",
"Significantly better"),
levels = c("Significantly worse",
"Slightly worse",
"Stayed the same",
"Slightly better",
"Significantly better")),
n=c(0.10, 0.15, 0.20, 0.25, 0.30))

expect_equal(got, expected)
Expand Down

0 comments on commit efb0f90

Please sign in to comment.