Graduate Studies Programs
This report summarizes students enrolled in degree and certificate seeking graduate programs in the School of Medicine in the Fall terms from Fall 2005 to Fall 2020.
All data are sourced from OHSU’s institutional student data sets (Banner via Cognos). For details about the data source or any other inquiries about this report, please contact the SoM Graduate Studies Office, somgrad@ohsu.edu.
Over the past 10 years, the following three initiatives were adopted by Graduate Council to help remove barriers for students to apply and matriculate into graduate programs at OHSU. All three initiatives were targeted towards increasing diversity in the graduate student population. While we make no conclusions in this report about the impacts of these initiatives, we hope this section provides useful context for considering how policy decisions affect student recruitment and retention, particularly for groups who are underrepresented in the biomedical sciences.
Promising Scholars (initiated 2012)
Admissions data suggested some students lacked financial resources to move to Oregon. The Promising Scholars was created and approved by Graduate Council and has been equally supported by the School of Medicine and Center for Diversity, Equity and Inclusion since 2012.
Awards are made to outstanding students, who have been admitted to any master’s or doctoral level graduate program in the School of Medicine and who also show great potential to contribute to the intellectual richness and diversity of the OHSU student community. Paid out upon matriculation into a program, these funds are intended help reimburse moving expenses to Portland, Oregon, but may be used for any purpose.
There are 10 awards per year. Initially worth $1,000 per student, they were increased to $1,500 in 2019 and to $2,000 in 2021. To date, these awards have helped recruit over 80 students into our programs.
Application Fee Waivers (initiated 2014)
To help limit financial barriers, Graduate Council agreed to waive application fees for applicants who had participated in any conference or activity that supported diversity (including SACNAS, ABRCAMS, and summer research programs), or who had financial hardship. We offer application fee waivers to approximately 130 applicants per year.
Dropped GRE requirement (initiated 2017/2021)
Our data showed GRE scores did not predict graduate student success and national data showed biases against women and underrepresented groups. In alignment with a national movement to drop GRE requirements, the majority of doctoral programs initiated a 3-year trial to drop the GRE requirements for admission. With no change in the quality or quantity of applicants during the trial period, all doctoral programs adopted this change permanently in 2021.
Term or Abbreviation | Description |
---|---|
AY | Academic Year: OHSU academic years begin in July and end in June, thus spanning two calendar years. The academic year is the higher of the two calendar years (i.e. July 2020 to June 2021 = AY 2021). |
Degree & Certificate Seeking | Students enrolled in a doctoral, masters, or certificate program; excludes non-degree graduate students |
Enrolled | A student is considered enrolled when they have a status of “Active” or “Graduated” for the term; Students are counted as enrolled in the term in which they graduate because they are normally active for a portion of that term. |
Fall Term & Year | Fall terms in this report are listed with the calendar year, not the academic year (i.e. Fall 2020 = fall term of AY 2021). |
Graduate Level | The level at which a student is enrolled: Doctoral, Masters, Certificate, or Non-Degree Graduate |
HC | Headcount - a distinct count of individual students |
International | Temporary visa holders |
Masters Degree Groups | A subdivision of masters programs created by SoM Graduate Studies; see reference table 1.2.3 Masters Degree Groups. |
Primary Program | The primary degree and major in which a student is enrolled in the Fall term; enrollment in secondary or dual degrees are not counted in this report. MD/PhD students are only counted when actively enrolled in the PhD portion of their program. |
Resident | U.S. citizens and permanent residents, either in-state or out-of-state. |
URM | Underrepresented minority - See reference table 1.2.5 Race, Ethnicity, URM Status for full description |
somgrad_diversity %>%
group_by(degree_type) %>%
summarize(Total = n_distinct(student_id),
`US Citizens & Permanent Residents` = n_distinct(student_id[residency_international_2 != "International"]),
International = n_distinct(student_id[residency_international_2 == "International"])) %>%
adorn_totals(where = "row", name = "All Students", ) %>%
arrange(factor(degree_type, levels = c("All Students", "Doctoral", "Masters", "Graduate Certificate", "Non-Degree Graduate"))) %>%
kbl(align = c(rep("r",3)), caption = paste0("OHSU SoM Headcounts by Graduate Level and Residency Status: ", focus_term_desc), col.names = c("", "Total", "US Citizens & Permanent Residents", "International")) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
column_spec(column = c(2:4), width = "10em")
Total | US Citizens & Permanent Residents | International | |
---|---|---|---|
All Students | 778 | 709 | 69 |
Doctoral | 275 | 233 | 42 |
Masters | 361 | 344 | 17 |
Graduate Certificate | 108 | 104 | 4 |
Non-Degree Graduate | 34 | 28 | 6 |
degree_type_reference_df <-
somgrad_diversity_multi %>%
group_by(degree_type_fct, masters_group, degree, degree_desc) %>%
summarise(focus_term_count = n_distinct(student_id[acad_period == focus_acad_period]), .groups = "drop") %>%
mutate(active_students = ifelse(focus_term_count > 0, "Y", "N"),
masters_group = ifelse(masters_group == "Non-Masters", "", masters_group),
degree_code_desc = paste0(degree, " - ", degree_desc)) %>%
arrange(degree_type_fct, masters_group, degree) %>%
rename_with(.fn = ~paste0("Active Students ", focus_term_desc, "?"), .cols = active_students)
degree_type_reference_df %>%
filter(degree_type_fct == "Masters") %>%
select(`Masters Group` = masters_group,`Degree Code - Description` = degree_code_desc, `Active Students Fall 2020?`) %>%
kbl(align = c(rep("l", 2), "c")) %>%
kable_styling(
bootstrap_options = c("striped", "hover", "condensed"),
font_size = 14, full_width = F, position = "left") %>%
column_spec(column = 3, width = "10em")
Masters Group | Degree Code - Description | Active Students Fall 2020? |
---|---|---|
MBA | MBA - Master of Business Admin | Y |
MPAS | MPAS - Master of Phys Asst Studies | Y |
MS & Other Masters | MBI - Master of Biomed Informat | Y |
MS & Other Masters | MCD - Master of Clinical Dietetics | N |
MS & Other Masters | MCR - Master of Clinical Research | Y |
MS & Other Masters | MMI - Master of Medical Informatics | N |
MS & Other Masters | MS - Master of Science | Y |
MS & Other Masters | MSE - Master of Software Engineering | N |
Major Desc | Major Code | Doctoral | Masters | Graduate Certificate | Non-Degree Graduate |
---|---|---|---|---|---|
Behavioral & Systems Neurosci | BEST | Fall 2020 | |||
Behavioral Neuroscience | BEHN | Fall 2020 | Fall 2009 | ||
Biochemistry & Molecular Biolo | BAMB | Fall 2020 | Fall 2016 | Fall 2013 | |
Biochemistry & Molecular Biolo | BMB | Fall 2020 | |||
Bioinform & Computation Biomed | BCB | Fall 2020 | Fall 2020 | ||
Biomedical Engineering | BME | Fall 2020 | Fall 2020 | Fall 2009 | |
Biomedical Informatics | BMI | Fall 2020 | Fall 2020 | Fall 2019 | |
Biomedical Sciences | BMSC | Fall 2020 | |||
Cancer Biology | CANB | Fall 2020 | Fall 2011 | ||
Cell & Developmental Biology | CELL | Fall 2020 | Fall 2010 | ||
Clinical Dietetics | CDT | Fall 2016 | |||
Clinical Nutrition | CCN | Fall 2017 | |||
Clinical Psychology | CPSY | Fall 2020 | |||
Computer Science & Engineering | CSE | Fall 2020 | Fall 2020 | Fall 2020 | |
Dietetic Internship | CD | Fall 2020 | |||
Electrical Engineering | ECE | Fall 2020 | Fall 2017 | Fall 2017 | |
Environmental Sci & Enginrng | ESE | Fall 2019 | Fall 2017 | Fall 2013 | |
Food Systems & Society | FSS | Fall 2020 | |||
Health & Clinical Informatics | HCIN | Fall 2020 | Fall 2020 | Fall 2020 | |
Healthcare Management | HCMN | Fall 2020 | Fall 2020 | Fall 2020 | |
Human Investigations Prgm | HIP | Fall 2020 | Fall 2020 | ||
Human Nutrition | HNUT | Fall 2020 | |||
Integrated Biomedical Sciences | IBMS | Fall 2008 | |||
Management in Sci & Technology | MST | Fall 2011 | Fall 2009 | Fall 2011 | |
Medical Informatics | MINF | Fall 2007 | Fall 2008 | ||
Medical Physics | MP | Fall 2019 | Fall 2020 | ||
Microbiology | MBIO | Fall 2020 | Fall 2013 | ||
Molecular & Cellular Biosc | MCB | Fall 2020 | |||
Molecular & Medical Genetics | MGEN | Fall 2020 | Fall 2010 | ||
MST Health Care Management | HCM | Fall 2010 | Fall 2010 | ||
Neuroscience | NSC | Fall 2020 | Fall 2020 | ||
Physician Assistant | PHAS | Fall 2020 | |||
Physiology/Pharmacology | PHPH | Fall 2020 | |||
Principles in Software Engrng | PSE | Fall 2005 | |||
Software Engineering | SE | Fall 2008 | Fall 2005 | ||
Undeclared | 0000 | Fall 2020 |
URM = Underrepresented minority
We define URM status following the National Institutes of Health (NIH) guidelines as “individuals from racial and ethnic groups that have been shown by the National Science Foundation to be underrepresented in health-related sciences on a national basis…” which include the following groups: Blacks or African Americans, Hispanics or Latinos, American Indians or Alaska Natives, Native Hawaiians, and other Pacific Islanders. We categorize students who identify as members of any of these groups as URM. Students who do not identify as one of the URM groups are categorized as follows: Asian (alone or in combination with White), White (alone), Unknown (no data) (see reference table below for summary).
Students who are not US citizens or permanent residents are excluded from this part of the report.
For more information about the NIH description of underrepresented populations:
https://diversity.nih.gov/about-us/population-underrepresented
Note that, for the purposes of this analysis, we do not treat hispanic or latino separately as an ethnicity, as is sometimes done in studies on racial and ethnic diversity. Instead, we include hispanic or latino as one of six combined racial and ethnic groups: American Indian or Alaska Native, Asian, Black or African-American, Hispanic or Latino, Native Hawaiian or Pacific Islander, and White. As a result, we do not add “non-hispanic” to any groups (e.g. “white, non-hispanic”), as this is to be understood from the methodology.
urm_ref %>%
arrange(order) %>%
select(-order) %>%
kbl(caption = "URM Status Categorization by Racial and Ethnic Groups") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left")
When a student identifies as | Their URM status is | Only when they meet the following condition(s) |
---|---|---|
American Indian or Alaska Native | URM | (unconditional) |
Black or African-American | URM | (unconditional) |
Hispanic or Latino | URM | (unconditional) |
Native Hawaiian or Pacific Islander | URM | (unconditional) |
Asian | URM | Asian + one or more URM groups |
Asian | Asian | Asian alone, or Asian + white |
White | URM | White + one or more URM groups |
White | Asian | White + Asian |
White | White | White alone |
The Fall 2020 percentage of URM students was 15%, the highest percent for this group for all years in this report. This continues a gradual upward trend over time in the proportion that these students comprise of the overall graduate student population (section 2.2).
Similarly, the Fall 2020 percentages of URM students within each graduate level (doctoral = 14%, masters = 15%, certificate = 15%) were also higher than all prior years in this report (see section 2.3).
The percentages of URM students in both our doctoral and masters programs for Fall 2020 are below the latest (Fall 2019) reported national levels for biological and biomedical sciences: masters = 22%, doctoral = 17% (NCSES, 2021, table 4-7a, https://ncses.nsf.gov/pubs/nsf21318/; note: NCSES URM group was calculated as the total of Hispanic or Latino, American Indian or Alaska Native, Black or African American, Native Hawaiian or Other Pacific Islander).
Disaggregating the masters level data into three sub-groups (MBA, MPAS, MS and Other) reveals different patterns in diversity over time for each group. MPAS racial and ethnic diversity has increased markedly over the past 15 years, with percentage of URM students above 20% for the last four years. The MBA program has had more moderate change, with a fairly steady increase in the percent of Asian students and little change over time in the percent of URM students, which has hovered around 8% for the duration of the program (section 2.4).
urm_degree_seeking_total %>%
ggplot(aes(fill = urm_status_fct, x = urm_status_fct, y = percent)) +
geom_col(aes(fill = urm_status_pal)) +
geom_text(aes(label = scales::percent(percent, accuracy = 1), y = percent), vjust = -0.5, size = 3) +
labs(y = "Percent", fill = "URM Status") +
scale_y_continuous(labels=scales::percent, expand = expansion(mult = c(0, .1))) +
geom_hline(yintercept = 0, color = "dark grey") +
scale_fill_identity(guide = "legend", labels = urm_degree_seeking_total$urm_status_fct, breaks = urm_degree_seeking_total$urm_status_pal) +
labs(title = "OHSU SoM Graduate Degree & Certificate Seeking Enrollment Among\nU.S. Citizens & Permanent Residents, by Race/Ethnicity",
subtitle = paste0("Total HC = ",
as.character(sum(urm_degree_seeking_total$count)),
"*\n",
focus_term_desc),
caption = paste0("*", HC_somgrad_international_or_nondegree,
" non-degree graduate and/or international students omitted")) +
theme_gs +
theme(axis.text.x = element_blank())
urm_degree_seeking_multi_df %>%
ggplot(aes(x = term_cal_year, y = percent)) +
geom_line(aes(color = urm_status_pal), size = 1.25) +
geom_point(aes(color = urm_status_pal), shape = 21, fill = "white", size = 3) +
scale_y_continuous(labels=scales::percent, limits = c(0,1)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 2)) +
scale_color_identity(guide = "legend",
labels = urm_degree_seeking_multi_df$urm_status_fct,
breaks = urm_degree_seeking_multi_df$urm_status_pal) +
labs(title = "OHSU SoM Graduate Degree & Certificate Seeking Enrollment Among\nU.S. Citizens & Permanent Residents, by Race/Ethnicity",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"),
panel.grid.major.y = element_line(color = "grey90"))
degree_type_urm_rf_fig <-
degree_type_urm_rf_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_urm_fig.csv')) %>%
ggplot(aes(fill = urm_status_fct, x = urm_status_fct, y = percent_by_deg)) +
# ggplot(aes(x=urm_status_fct) +
geom_col(aes(fill = urm_status_pal)) +
geom_text(aes(label = scales::percent(percent_by_deg, accuracy = 1), y = percent_by_deg), vjust = -0.5, size = 3) +
# geom_col(position = "stack") +
labs(y = "Percent", fill = "URM Status") +
facet_wrap(~degtype_label, nrow = 1, strip.position = "bottom" ) +
scale_y_continuous(labels=scales::percent, expand = expansion(mult = c(0, .1))) +
geom_hline(yintercept = 0, color = "dark grey") +
# coord_flip() +
scale_fill_identity(guide = "legend", labels = degree_type_urm_rf_df$urm_status_fct, breaks = degree_type_urm_rf_df$urm_status_pal) +
labs(title = "OHSU SoM Graduate Degree & Certificate Seeking Enrollment Among\nU.S. Citizens & Permanent Residents, by Race/Ethnicity & Graduate Level",
subtitle = paste0("Total HC = ",
as.character(sum(urm_degree_seeking_total$count)),
"*\n",
focus_term_desc),
caption = paste0("*", HC_somgrad_international_or_nondegree,
" non-degree graduate and/or international students omitted")) +
theme_gs +
theme(axis.text.x = element_blank())
# theme_minimal() +
# theme(axis.line = element_blank(),
# panel.grid.major = element_blank(),
# panel.grid.minor = element_blank(),
# panel.border = element_blank(),
# panel.background = element_blank(),
# axis.title = element_blank(),
# axis.text.x = element_blank(),
# legend.position = "top",
# legend.direction = "horizontal",
# legend.justification = "left",
# legend.title = element_blank(),
# plot.title = element_text(#margin = margin(b=0),
# #hjust = 0.05,
# colour = "gray22",
# face = "bold",
# debug = F),
# plot.subtitle = element_text(face = "italic", hjust = 0, colour = "gray22"),
# plot.caption = element_text(face = "italic", hjust = 0, colour = "gray22")
# )
degree_type_urm_rf_fig
somgrad_diversity %>%
filter(urm_status != "International",
degree_type_fct != "Non-Degree Graduate") %>%
mutate(urm_status = factor(urm_status, levels = c("URM","Asian","White", "Unknown"))) %>%
count(urm_status, degree_type_fct) %>%
pivot_wider(names_from = degree_type_fct, values_from = n) %>%
adorn_totals(where = c("row", "col")) %>%
adorn_percentages(denominator = "col") %>%
adorn_pct_formatting(digits = 0, rounding = "half up") %>%
adorn_ns() %>%
adorn_title(row_name = "", col_name = "") %>%
kbl(align = c("l", rep("c",4)), caption = paste0("OHSU SoM Graduate Degree & Certificate Seeking Enrollment Among U.S. Citizens & Permanent Residents, by Race/Ethnicity: ", focus_term_desc)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(c(1,6), bold = T) %>%
column_spec(5, bold = T)
Doctoral | Masters | Graduate Certificate | Total | |
URM | 14% (33) | 15% (53) | 15% (16) | 15% (102) |
Asian | 14% (32) | 16% (55) | 19% (20) | 16% (107) |
White | 70% (163) | 66% (228) | 61% (63) | 67% (454) |
Unknown | 2% (5) | 2% (8) | 5% (5) | 3% (18) |
Total | 100% (233) | 100% (344) | 100% (104) | 100% (681) |
urm_degree_type_multi_df %>%
ggplot(aes(x = term_cal_year, y = percent)) +
geom_line(aes(color = urm_status_pal), size = 1.25) +
geom_point(aes(color = urm_status_pal), shape = 21, fill = "white", size = 2) +
scale_y_continuous(labels=scales::percent, limits = c(0,1), breaks = seq(0,1, by = 0.2)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_color_identity(guide = "legend",
labels = urm_degree_seeking_multi_df$urm_status_fct,
breaks = urm_degree_seeking_multi_df$urm_status_pal) +
facet_wrap(degree_type_fct ~.) +
labs(title = "OHSU SoM Graduate Degree & Certificate Seeking Enrollment Among\nU.S. Citizens & Permanent Residents, by Race/Ethnicity & Graduate Level",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"),
panel.grid.major.y = element_line(color = "grey90")
)
masters_group_urm_rf_fig <-
masters_group_urm_rf_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_urm_fig.csv')) %>%
ggplot(aes(fill = urm_status_fct, x = urm_status_fct, y = percent_by_deg)) +
# ggplot(aes(x=urm_status_fct) +
geom_col(aes(fill = urm_status_pal)) +
geom_text(aes(label = scales::percent(percent_by_deg, accuracy = 1), y = percent_by_deg), vjust = -0.5, size = 3) +
# geom_col(position = "stack") +
labs(y = "Percent", fill = "URM Status") +
facet_wrap(~masters_group_label, nrow = 1, strip.position = "bottom" ) +
scale_y_continuous(labels=scales::percent, expand = expansion(mult = c(0, .1))) +
geom_hline(yintercept = 0, color = "dark grey") +
# coord_flip() +
scale_fill_identity(guide = "legend", labels = masters_group_urm_rf_df$urm_status_fct, breaks = masters_group_urm_rf_df$urm_status_pal) +
labs(title = "OHSU SoM Masters Degree Enrollment Among\nU.S. Citizens & Permanent Residents,\nby Race/Ethnicity & Masters Degree Group",
subtitle = paste0("Total HC = ", as.character(sum(masters_group_urm_rf_df$count)),
"*\n",
focus_term_desc),
caption = paste0("*Masters only; ",
HC_somgrad_ms_international_or_nondegree,
" international masters students omitted")) +
theme_minimal() +
theme(axis.line = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.border = element_blank(),
panel.background = element_blank(),
axis.title = element_blank(),
axis.text.x = element_blank(),
legend.position = "top",
legend.direction = "horizontal",
legend.justification = "left",
legend.title = element_blank(),
plot.title = element_text(#margin = margin(b=0),
#hjust = 0.05,
colour = "gray22",
face = "bold",
hjust = 0,
debug = F),
plot.subtitle = element_text(face = "italic", hjust = 0, colour = "gray22"),
plot.caption = element_text(face = "italic", hjust = 0, colour = "gray22")
)
masters_group_urm_rf_fig
somgrad_diversity %>%
filter(masters_group != "Non-Masters",
urm_status_fct != "International") %>%
mutate(urm_status = factor(urm_status, levels = c("URM","Asian","White", "Unknown"))) %>%
count(urm_status, masters_group) %>%
pivot_wider(names_from = masters_group, values_from = n) %>%
adorn_totals(where = c("row", "col")) %>%
adorn_percentages(denominator = "col") %>%
adorn_pct_formatting(digits = 0, rounding = "half up") %>%
adorn_ns() %>%
adorn_title(row_name = "", col_name = "") %>%
kbl(align = c("l", rep("c",4)), caption = paste0("OHSU SoM Masters Degree Enrollment Among\nU.S. Citizens & Permanent Residents,\nby Race/Ethnicity & Masters Degree Group: ", focus_term_desc)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(c(1,6), bold = T) %>%
column_spec(5, bold = T)
MBA | MPAS | MS & Other Masters | Total | |
URM | 6% (6) | 26% (22) | 15% (25) | 15% (53) |
Asian | 15% (15) | 12% (10) | 18% (30) | 16% (55) |
White | 75% (73) | 62% (52) | 63% (103) | 66% (228) |
Unknown | 3% (3) |
|
3% (5) | 2% (8) |
Total | 100% (97) | 100% (84) | 100% (163) | 100% (344) |
urm_masters_group_multi_df %>%
ggplot(aes(x = term_cal_year, y = percent)) +
geom_line(aes(color = urm_status_pal), size = 1.25) +
geom_point(aes(color = urm_status_pal), shape = 21, fill = "white", size = 2) +
scale_y_continuous(labels=scales::percent, limits = c(0,1), breaks = seq(0,1, by = 0.2)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_color_identity(guide = "legend",
labels = urm_masters_group_multi_df$urm_status_fct,
breaks = urm_masters_group_multi_df$urm_status_pal) +
facet_wrap(masters_group ~.) +
labs(title = "OHSU SoM Masters Degree Enrollment Among\nU.S. Citizens & Permanent Residents,\nby Race/Ethnicity & Masters Degree Group",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"),
panel.grid.major.y = element_line(color = "grey90")
)
alignTitles <- function(ggplot, title = 2, subtitle = 2, caption = 2) {
# grab the saved ggplot2 object
g <- ggplotGrob(ggplot)
# find the object which provides the plot information for the title, subtitle, and caption
g$layout[which(g$layout$name == "title"),]$l <- title
g$layout[which(g$layout$name == "subtitle"),]$l <- subtitle
g$layout[which(g$layout$name == "caption"),]$l <- caption
g
}
HC_somgrad_race_international <- somgrad_race %>%
filter(residency_international_2 != "Unknown/Other") %>%
distinct(student_id) %>%
nrow()
race_international_overall_df <-
somgrad_race %>%
# mutate(residency_international_2 = ifelse(residency_international %in% c("In State Resident", "Out of State Resident"), "Resident", "International")) %>%
group_by(race_eth_desc, residency_international_2) %>%
summarize(count_race_res = n()) %>%
filter(residency_international_2 != "Unknown/Other") %>%
mutate(count_race = sum(count_race_res)) %>%
# mutate(percent = count/all_student_count) %>%
left_join(colorpal_residency2, by = "residency_international_2") %>%
ungroup()
# race_international_HC_labels <-
# race_international_overall_df %>%
# distinct(race_eth_desc, count_race)
race_international_overall_fig <-
race_international_overall_df %>%
ggplot(aes(x = reorder(race_eth_desc, -count_race), y = count_race_res)) +
geom_col(aes(fill = residency_international_2_pal), position = "stack") +
geom_text(data = distinct(race_international_overall_df, race_eth_desc, count_race),
aes(x = reorder(race_eth_desc, -count_race), y = count_race, label = count_race),
hjust = "left", nudge_y = 10, color = "grey22") +
scale_y_continuous(expand = expansion(mult = c(0, 0.1))) +
coord_flip() +
theme_minimal() +
labs(
title = "OHSU SoM Graduate Student Enrollment by Race/Ethnicity",
subtitle = paste0("Race/Ethnicity defined as alone or in combination*\nHC = ", as.character(HC_somgrad_race_international), "\n", focus_term_desc),
caption = "*Individuals who identify in more than one racial or ethnic group are counted in each group.") +
scale_fill_identity(guide = "legend",
labels = race_international_overall_df$residency_international_2,
breaks = race_international_overall_df$residency_international_2_pal) +
theme_gs
rio_fig2 <- alignTitles(race_international_overall_fig)
grid::grid.newpage()
grid::grid.draw(rio_fig2)
race_international_multi_overall_df <-
somgrad_race_multi %>%
filter(!residency_international_2 %in% c("International", "Unknown/Other")) %>%
group_by(term_cal_year) %>%
mutate(HC_resident = n_distinct(student_id)) %>%
group_by(term_cal_year, race_eth_desc, HC_resident) %>%
summarize(HC_race_res = n_distinct(student_id)) %>%
mutate(percent = HC_race_res/HC_resident) %>%
left_join(colorpal_race_eth, by = "race_eth_desc") %>%
ungroup()
race_international_multi_overall_df %>%
ggplot(aes(x = term_cal_year, y = percent)) +
geom_line(aes(color = race_eth_desc_pal), size = 0.75, alpha = 0.75) +
geom_point(aes(color = race_eth_desc_pal), shape = 21, fill = "white", size = 2) +
scale_y_continuous(labels=scales::percent, limits = c(0,1)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 2)) +
scale_color_identity(guide = guide_legend(nrow = 3, byrow = T),
labels = race_international_multi_overall_df$race_eth_desc,
breaks = race_international_multi_overall_df$race_eth_desc_pal) +
labs(title = "OHSU SoM Graduate Enrollment Among\nU.S. Citizens & Permanent Residents, by Race/Ethnicity",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")", "\nRace/Ethnicity defined as alone or in combination*"),
caption = "*Individuals who identify in more than one racial or ethnic group are counted in each group.") +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"),
panel.grid.major.y = element_line(color = "grey90"))
race_international_degtype_df <-
somgrad_race %>%
filter(residency_international_2 != "Unknown/Other",
degree_type_fct != "Non-Degree Graduate") %>%
select(student_id, degree_type_fct, race_eth_desc, residency_international_2) %>%
group_by(degree_type_fct) %>%
mutate(degtype_hc = n_distinct(student_id)) %>%
group_by(degree_type_fct, degtype_hc, race_eth_desc, residency_international_2) %>%
summarize(count_degtype_race_res = n()) %>%
mutate(count_race_res = sum(count_degtype_race_res),
percent_race_res_degtype = count_degtype_race_res/degtype_hc,
percent_race_degtype = count_race_res/degtype_hc) %>%
left_join(colorpal_residency2, by = "residency_international_2") %>%
ungroup()
HC_race_international_degtype <- somgrad_race %>%
filter(residency_international_2 != "Unknown/Other",
degree_type_fct != "Non-Degree Graduate") %>%
summarise(n_distinct(student_id)) %>%
pull()
HC_race_international_degtype_omit <- somgrad_race %>%
filter(residency_international_2 == "Unknown/Other" |
degree_type_fct == "Non-Degree Graduate") %>%
summarise(n_distinct(student_id)) %>%
pull()
degtype_labels_df <- race_international_degtype_df %>%
distinct(degree_type_fct, degtype_hc) %>%
mutate(degtype_label = factor(paste0(degree_type_fct, "\nHC = ", as.character(degtype_hc))))
race_international_degtype_fig <-
race_international_degtype_df %>%
ggplot(aes(x = reorder(race_eth_desc, -count_race_res), y = count_degtype_race_res)) +
geom_col(aes(fill = residency_international_2_pal), position = "stack") +
geom_text(data = degtype_labels_df, aes(x=Inf, y = Inf, label = degtype_label), vjust=1, hjust=1, color = "grey22", size = 3.5) +
# scale_y_continuous(labels=scales::percent, limits = c(0,0.8)) +
coord_flip() +
facet_wrap(degree_type_fct ~ ., ncol = 1, strip.position = "top") +
labs(
title = "OHSU SoM Graduate Student Enrollment by Race/Ethnicity & Graduate Level",
subtitle = paste0("Race/Ethnicity defined as alone or in combination*\nHC = ", as.character(HC_race_international_degtype), "**\n", focus_term_desc),
caption = paste0("*Individuals who identify in more than one racial or ethnic group are counted in each group.\n**", HC_race_international_degtype_omit, " non-degree graduate students omitted")
) +
scale_fill_identity(guide = "legend",
labels = race_international_degtype_df$residency_international_2,
breaks = race_international_degtype_df$residency_international_2_pal) +
theme_gs +
theme(strip.background = element_blank(),
strip.text = element_blank())
ridt_fig2 <- alignTitles(race_international_degtype_fig)
grid::grid.newpage()
grid::grid.draw(ridt_fig2)
# somgrad_race %>%
# filter(residency_international_2 != "Unknown/Other",
# degree_type_fct != "Non-Degree Graduate") %>%
# select(student_id, degree_type_fct, race_eth_desc, residency_international_2) %>%
# group_by(degree_type_fct) %>%
# mutate(degtype_hc = n_distinct(student_id)) %>%
# group_by(degree_type_fct, degtype_hc, race_eth_desc, residency_international_2) %>%
# summarize(count_degtype_race_res = n()) %>%
# mutate(count_race_res = sum(count_degtype_race_res),
# percent_race_res_degtype = count_degtype_race_res/degtype_hc,
# percent_race_degtype = count_race_res/degtype_hc) %>%
# ungroup()
total_hc_race_degtype <-
somgrad_race %>%
filter(residency_international_2 != "Unknown/Other",
degree_type_fct != "Non-Degree Graduate") %>%
group_by(degree_type_fct, residency_international_2) %>%
summarise(HC_degtype = n_distinct(student_id),
race_eth_desc = "Total HC") %>%
pivot_wider(names_from = residency_international_2, values_from = HC_degtype)
somgrad_race %>%
filter(residency_international_2 != "Unknown/Other",
degree_type_fct != "Non-Degree Graduate") %>%
count(race_eth_desc, residency_international_2, degree_type_fct, name = "HC_degtype") %>%
pivot_wider(names_from = residency_international_2, values_from = HC_degtype, values_fill = 0) %>%
bind_rows(total_hc_race_degtype) %>%
pivot_wider(names_from = degree_type_fct, values_from = c("International", "Resident")) %>%
rowwise() %>%
mutate(international_total = sum(c_across(starts_with("International"))),
resident_total = sum(c_across(starts_with("Resident")))) %>%
select(race_eth_desc, ends_with("Doctoral"), ends_with("Masters"), ends_with("Certificate"), ends_with("total")) %>%
ungroup() %>%
kbl(col.names = c("", rep(c("International", "Resident"), 4))) %>%
column_spec(column = c(2,4,6,8), border_left = T) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
add_header_above(c(" ", "Doctoral" = 2, "Masters" = 2, "Graduate Certificate" = 2, "All Degree & Certificate Seeking" = 2))
International | Resident | International | Resident | International | Resident | International | Resident | |
---|---|---|---|---|---|---|---|---|
American Indian or Alaska Native | 0 | 5 | 0 | 8 | 0 | 1 | 0 | 14 |
Asian | 26 | 32 | 13 | 63 | 2 | 22 | 41 | 117 |
Black or African-American | 0 | 8 | 2 | 14 | 0 | 6 | 2 | 28 |
Hispanic or Latino | 2 | 24 | 1 | 29 | 0 | 6 | 3 | 59 |
Native Hawaiian or Pacific Islander | 0 | 1 | 0 | 9 | 0 | 4 | 0 | 14 |
Not Reported | 0 | 5 | 0 | 8 | 0 | 5 | 0 | 18 |
White | 18 | 191 | 3 | 258 | 2 | 70 | 23 | 519 |
Total HC | 42 | 233 | 17 | 344 | 4 | 104 | 63 | 681 |
58% of graduate students were female in Fall 2020 (section 3.2). This is similar to proportions for female students over the last decade in SoM Graduate Studies programs and similar to the latest (Fall 2019) reported national levels for female students in the biological and biomedical sciences of 59% (NCSES, 2021, table 4-7a, https://ncses.nsf.gov/pubs/nsf21318/).
Female students outnumbered male students within each of the graduate levels in Fall 2020, with a somewhat higher proportion of female students in masters and graduate certificate programs (62% and 61%, respectively) than in doctoral programs (53%) (section 3.3).
The doctoral student population has been predominantly female (51%-57%) since Fall 2008, except for Fall 2018 (49%). Graduate certificate programs have had a higher percentage of female students (55%-65%) than male students for all years reported (section 3.3).
The gender distribution in the masters population has changed over time from being historically male-dominated (Fall 2005 to Fall 2008) to increasingly female-dominated, with the largest proportion of female students (62%) in Fall 2020 (section 3.3). This change over time has been driven largely by shifts in gender distribution of the MS & Other subgroup. Both the MPAS and MBA programs have had fairly steady gender distributions over time with consistently larger proportions of female students in the MPAS program and a more even gender distribution over time for the MBA program (section 3.4).
gender_total_multi_df %>%
filter(person_gender_display != "Not Reported") %>%
ggplot(aes(group = person_gender_display, x = term_cal_year, y = percent)) +
geom_point(aes(color = person_gender_pal)) +
geom_line(aes(color = person_gender_pal)) +
geom_hline(yintercept = 0.5, color = "grey") +
geom_label(data = filter(gender_total_multi_df,
person_gender_display != "Not Reported",
term_cal_year == focus_term_cal_year),
aes(x = term_cal_year, y = percent,
label = scales::percent(round(percent,2)), fill = person_gender_pal),
size = 3, color = "grey22", alpha = 0.8, label.size = 0.1) +
scale_y_continuous(labels=scales::percent, limits = c(0,1)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 2)) +
scale_color_identity(guide = "legend", labels = gender_total_multi_df$person_gender_display, breaks = gender_total_multi_df$person_gender_pal) +
scale_fill_identity() +
labs(title = "Annual OHSU SoM Graduate Student Enrollment Percentages by Gender",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")"),
caption = "*Current OHSU choices are female/male/decline to respond.") +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"))
somgrad_diversity %>%
tabyl(person_gender_display, degree_type_fct) %>%
adorn_totals(where = c("row", "col")) %>%
adorn_percentages(denominator = "col") %>%
adorn_pct_formatting(digits = 0, rounding = "half up") %>%
adorn_ns() %>%
adorn_title(row_name = "", col_name = "") %>%
kbl(align = c("l", rep("c",5)), caption = paste0("OHSU SoM Graduate Student Enrollment by Gender & Graduate Level: ", focus_term_desc)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(row = 1, bold = T)
Doctoral | Masters | Graduate Certificate | Non-Degree Graduate | Total | |
Female | 53% (145) | 62% (224) | 61% (66) | 56% (19) | 58% (454) |
Male | 47% (129) | 38% (136) | 39% (42) | 44% (15) | 41% (322) |
Not Reported | 0% (1) | 0% (1) | 0% (0) | 0% (0) | 0% (2) |
Total | 100% (275) | 100% (361) | 100% (108) | 100% (34) | 100% (778) |
degree_type_facet_labels <- distinct(somgrad_diversity_multi, degree_type_fct)
gender_degree_type_multi_df %>%
filter(!person_gender_display %in% c("Male", "Not Reported"),
degree_type_fct != "Non-Degree Graduate") %>%
ggplot(aes(x = term_cal_year, y = percent)) +
geom_point(aes(color = degree_type_pal)) +
geom_line(aes(color = degree_type_pal)) +
geom_hline(yintercept = 0.5, color = "grey") +
geom_text(data = filter(degree_type_facet_labels, degree_type_fct != "Non-Degree Graduate"),
aes(x=(first_term_cal_year + last_term_cal_year)/2, y = .98, label = degree_type_fct),
color = "grey22", size = 3.5) +
scale_y_continuous(labels=scales::percent, limits = c(0,1)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_color_identity(guide = "legend", labels = gender_degree_type_multi_df$person_gender_display, breaks = gender_degree_type_multi_df$person_gender_pal) +
labs(title = "Annual OHSU SoM Graduate Student % Female Enrollment \nby Graduate Level",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")"),
caption = "*Current OHSU choices are female/male/decline to respond.") +
facet_wrap(degree_type_fct ~.) +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"),
strip.text = element_blank())
gender_masters_group_fig <-
gender_masters_group_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_sex.csv')) %>%
ggplot(aes(x = reorder(masters_group_label, percent_by_mg),
y = percent_by_mg,
group = factor(person_gender_display, levels = c("Not Reported",
"Male",
"Female")))
) +
geom_col(aes(fill = person_gender_pal), position = "stack") +
scale_y_continuous(labels=scales::percent, limits = c(0,1)) +
coord_flip() +
scale_fill_identity(guide = "legend",
labels = gender_masters_group_df$person_gender_display,
breaks = gender_masters_group_df$person_gender_pal) +
geom_hline(yintercept = 0.5) +
labs(
title = "OHSU SoM Masters Student Enrollment by Gender* & Masters Degree Group",
subtitle = paste0("Total HC = ", HC_masters_group, " (All Masters Students)",
"\n", focus_term_desc),
caption = "*Current OHSU choices are female/male/decline to respond.\n"
) +
theme_gs +
theme(aspect.ratio = 1/3)
gmg_fig2 <- alignTitles(gender_masters_group_fig)
grid::grid.newpage()
grid::grid.draw(gmg_fig2)
somgrad_diversity %>%
filter(masters_group != "Non-Masters") %>%
tabyl(person_gender_display, masters_group) %>%
adorn_totals(where = c("row", "col")) %>%
adorn_percentages(denominator = "col") %>%
adorn_pct_formatting(digits = 0, rounding = "half up") %>%
adorn_ns() %>%
adorn_title(row_name = "", col_name = "") %>%
kbl(align = c("l", rep("c",4)), caption = paste0("OHSU SoM Masters Student Enrollment by Gender & Masters Degree Group: ", focus_term_desc)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(row = 1, bold = T)
MBA | MPAS | MS & Other Masters | Total | |
Female | 53% (52) | 70% (59) | 63% (113) | 62% (224) |
Male | 46% (46) | 30% (25) | 37% (65) | 38% (136) |
Not Reported | 1% (1) | 0% (0) | 0% (0) | 0% (1) |
Total | 100% (99) | 100% (84) | 100% (178) | 100% (361) |
masters_group_facet_labels <- distinct(somgrad_diversity_multi, masters_group)
gender_masters_group_multi_df %>%
filter(!person_gender_display %in% c("Male", "Not Reported")) %>%
ggplot(aes(x = term_cal_year, y = percent)) +
geom_point(aes(color = masters_group_pal)) +
geom_line(aes(color = masters_group_pal)) +
geom_hline(yintercept = 0.5, color = "grey") +
geom_text(data = filter(masters_group_facet_labels, masters_group != "Non-Masters"),
aes(x=(first_term_cal_year + last_term_cal_year)/2, y = .98, label = masters_group),
color = "grey22", size = 3.5) +
scale_y_continuous(labels=scales::percent, limits = c(0,1)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_color_identity(guide = "legend",
labels = gender_masters_group_multi_df$person_gender_display,
breaks = gender_masters_group_multi_df$person_gender_pal) +
labs(title = "Annual OHSU SoM Masters % Female Enrollment \nby Masters Degree Group",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")"),
caption = "*Current OHSU choices are female/male/decline to respond.") +
facet_wrap(masters_group ~.) +
theme_gs +
xlab("Calendar Year") +
theme(axis.title.x = element_text(colour = "gray22"),
strip.text = element_blank())
In Fall 2020, the median age of SoM Graduate Students was 30, with 50% of students (the interquartile range (IQR)) between the ages of 27 and 35, and 90% of students between 24 and 46. This is similar to prior years in the report. (section 4.1)
In Fall 2020, consistent with prior years in this report, the masters and graduate certificate populations were older (median of 32 and 33 respectively) and more diverse in age (IQR = 28 to 37 & 30 to 37, respectively) than the doctoral population (median = 28, IQR = 26 to 31) (section 4.2).
Since Fall 2005, the graduate certificate student population has become slightly younger and less diverse in age, seemingly from a decrease in the proportion of students over 40, while the age distribution of the masters and doctoral programs have changed little (section 4.2.2).
Note: Age is calculated as age (in years) as of October 15th for the corresponding Fall term.
somgrad_age_q <- c('Min', "5%" ,'Q1', 'Median', 'Q3', '95%', 'Max')
somgrad_age_q_grp <- factor(c('Min/Max', "5%/95%", "25%/75%", 'Median (50%)',
"25%/75%", "5%/95%", 'Min/Max'),
levels = c('Median (50%)', "25%/75%", "5%/95%", 'Min/Max'))
somgrad_age <-
somgrad_diversity %>%
select(student_id, age_admitted, birth_dt, degree_type_fct) %>%
mutate(age_in_term = floor(as.numeric((ymd("2020-10-15") - ymd(birth_dt)))/365.25))
age_mu_all <- somgrad_age %>%
summarise(IQR = round(quantile(age_in_term, c(0, 0.05, 0.25, 0.5, 0.75, 0.95, 1), na.rm = T), digits = 0),
q = somgrad_age_q,
q_grp = somgrad_age_q_grp
# q = c('Min', "5%" ,'Q1', 'Median', 'Q3', '95%', 'Max'),
# q_grp = factor(c('Min/Max', "5%/95%", "25%/75%", 'Median (50%)',
# "25%/75%", "5%/95%", 'Min/Max'),
# levels = c('Median (50%)', "25%/75%", "5%/95%", 'Min/Max'))
)
age_overall_fig <-
somgrad_age %>%
ggplot(aes(x=age_in_term)) +
geom_histogram(aes(y = ..density..), binwidth = 2, fill = "grey80") +
geom_density(alpha = 0.2, fill = "grey80") +
geom_point(data = age_mu_all, aes(x = IQR, y = 0, shape = q_grp), size = 2.5, color = "blue") +
geom_text(data = age_mu_all, aes(x = IQR, y = 0.006, label = IQR), color = "blue") +
scale_y_continuous(labels=scales::percent_format(accuracy = 1)) +
theme_gs +
theme(aspect.ratio = 1/3,
axis.title.x = element_text(color = "grey22")) +
labs(title = "OHSU SoM Graduate Students, Age Distribution",
subtitle = paste0("HC = ", as.character(HC_somgrad_diversity),
"\n", focus_term_desc),
x = "Age",
y = "% of Graduate Students")
age_overall_fig
somgrad_age_multi <-
somgrad_diversity_multi %>%
select(student_id, acad_period, term_cal_year, age_admitted, birth_dt, degree_type_fct) %>%
mutate(age_in_term = floor(as.numeric((ymd(paste0(as.character(term_cal_year),"-10-15")) - ymd(birth_dt)))/365.25))
age_mu_all_multi <- somgrad_age_multi %>%
filter(age_in_term >= 10) %>%
group_by(term_cal_year) %>%
summarise(IQR = quantile(age_in_term, c(0, 0.05, 0.25, 0.5, 0.75, .95, 1), na.rm = T),
q = somgrad_age_q,
q_grp = somgrad_age_q_grp
) %>%
mutate(q_grp_line = case_when(q_grp == "Median (50%)" ~ "solid",
q_grp == "25%/75%" ~ "longdash",
q_grp == "5%/95%" ~ "dotdash",
q_grp == "Min/Max" ~ "blank")) %>%
arrange(IQR)
age_mu_all_multi %>%
ggplot(aes(x = term_cal_year, y = IQR, group = q)) +
geom_line(aes(group = q, color = q_grp, linetype = q_grp_line)) +
geom_point(aes(color = q_grp, shape = q_grp), size = 2) +
scale_y_continuous(breaks = c(10, 20, 30, 40, 50, 60, 70)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 2)) +
scale_linetype_identity() +
labs(title = "OHSU SoM Annual Age Distrbution, All Graduate Students",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
xlab("Calendar Year") +
ylab("Age") +
theme_gs +
theme(panel.grid.major.y = element_line(color = "grey90"),
axis.title = element_text(color = "grey22"))
OHSU SoM Graduate Students, Age Distribution by Graduate Level
age_mu_total <- somgrad_age %>%
summarise(IQR = round(quantile(age_in_term, c(0, 0.05, 0.25, 0.5, 0.75, 0.95, 1), na.rm = T), digits = 0),
q = somgrad_age_q,
q_grp = somgrad_age_q_grp,
count = n_distinct(student_id)) %>%
mutate(degree_type = "All Students")
age_mu_degtype %>%
ungroup() %>%
mutate(degree_type = as.character(degree_type_fct)) %>%
bind_rows(age_mu_total) %>%
select(degree_type, IQR, q, count) %>%
pivot_wider(names_from = q, values_from = IQR) %>%
kbl(caption = "OHSU SoM Graduate Students, Age Distribution by Graduate Level",
col.names = c(focus_term_desc, "HC", "Min", "5%", "25%", "Median (50%)", "75%", "95%","Max"),
align = c("l", "l", rep("c", 7))) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(row = 5, bold = T) %>%
add_header_above(header = c(" " = 2, "Age by Percentiles" = 7))
Fall 2020 | HC | Min | 5% | 25% | Median (50%) | 75% | 95% | Max |
---|---|---|---|---|---|---|---|---|
Doctoral | 275 | 22 | 24 | 26 | 28 | 31 | 35 | 50 |
Masters | 361 | 18 | 24 | 28 | 32 | 37 | 49 | 60 |
Graduate Certificate | 108 | 22 | 23 | 30 | 33 | 37 | 53 | 66 |
Non-Degree Graduate | 34 | 22 | 23 | 29 | 34 | 38 | 45 | 56 |
All Students | 778 | 18 | 24 | 27 | 30 | 35 | 46 | 66 |
age_mu_degree_type_multi <- somgrad_age_multi %>%
filter(age_in_term >= 10) %>%
group_by(term_cal_year, degree_type_fct) %>%
summarise(IQR = quantile(age_in_term, c(0, 0.05, 0.25, 0.5, 0.75, .95, 1), na.rm = T),
q = c('Min', "5%" ,'Q1', 'Median', 'Q3', '95%', 'Max'),
q_grp = factor(c('Min/Max', "5%/95%", "25%/75%", 'Median (50%)', "25%/75%", "5%/95%", 'Min/Max'), levels = c('Median (50%)', "25%/75%", "5%/95%", 'Min/Max'))) %>%
mutate(q_grp_line = case_when(q_grp == "Median (50%)" ~ "solid",
q_grp == "25%/75%" ~ "longdash",
q_grp == "5%/95%" ~ "dotdash",
q_grp == "Min/Max" ~ "blank")) %>%
arrange(IQR)
age_mu_degree_type_multi %>%
filter(degree_type_fct != "Non-Degree Graduate",
q_grp != "Min/Max") %>%
ggplot(aes(x = term_cal_year, y = IQR, group = q)) +
geom_line(aes(group = q, color = q_grp, linetype = q_grp_line), size = 0.3) +
geom_point(aes(color = q_grp, shape = q_grp), size = 1) +
scale_y_continuous(breaks = c(10, 20, 30, 40, 50, 60, 70), expand = expansion(add = c(5,5))) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_linetype_identity() +
labs(title = "OHSU SoM Annual Age Distrbution, All Graduate Students",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
facet_wrap(degree_type_fct ~.) +
xlab("Calendar Year") +
ylab("Age") +
theme_gs +
theme(panel.grid.major.y = element_line(color = "grey90"),
axis.title = element_text(color = "grey22"))
Consistent with prior years in this report, in Fall 2020 a majority of both the masters and graduate certificate populations were in-state residents (62% and 56% respectively) with relatively few international students (5% and 4%, respectively), while doctoral students were mostly residents from out of state (Out of State Residents = 58%) with a relatively higher percentage of international students (15%). (section 5.1)
The proportion of SoM Graduate Studies doctoral students who are international declined from 23% to 18% between Fall 2005 and Fall 2011 and has remained between 13% and 16% since Fall 2012. This is below the national average of 26% (Fall 2019) for doctoral programs in biological and biomedical sciences (NCSES, 2021, table 4-7a, https://ncses.nsf.gov/pubs/nsf21318/).
residency_degree_type_fig <-
residency_degree_type_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_residency.csv')) %>%
ggplot(aes(fill = residency_international, x = residency_international, y = percent_by_deg)) +
geom_col(aes(fill = residency_international_pal)) +
geom_text(aes(label = scales::percent(percent_by_deg, accuracy = 1), y = percent_by_deg), vjust = -0.5, size = 3) +
# geom_col(position = "stack") +
labs(y = "Percent") +
facet_wrap(~degtype_label, nrow = 1, strip.position = "bottom" ) +
scale_y_continuous(labels=scales::percent, limits = c(0,0.8)) +
geom_hline(yintercept = 0, color = "dark grey") +
# coord_flip() +
scale_fill_identity(guide = "legend",
labels = residency_degree_type_df$residency_international,
breaks = residency_degree_type_df$residency_international_pal) +
labs(title = "OHSU SoM Graduate Enrollment by Residency & Graduate Level",
subtitle = paste0("Total HC = ", as.character(sum(residency_degree_type_df$count)), "*\n",
focus_term_desc),
caption = paste0("*", HC_nondegree, " non-degree graduate students omitted")
) +
theme_gs +
theme(axis.text.x = element_blank())
residency_degree_type_fig
somgrad_diversity %>%
filter(residency_international %in% c("In State Resident", "Out of State Resident", "International")) %>%
count(degree_type_fct, residency_international) %>%
pivot_wider(names_from = degree_type_fct, values_from = n) %>%
adorn_totals(where = c("row","col")) %>%
adorn_percentages(denominator = "col") %>%
adorn_pct_formatting(digits = 0, rounding = "half up") %>%
adorn_ns() %>%
adorn_title(row_name = focus_term_desc, col_name = "") %>%
kbl(align = c("l", rep("c",5)), caption = paste0("OHSU SoM Graduate Enrollment by Residency Status: ", focus_term_desc)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(c(1), bold = T) %>%
column_spec(6, bold = T)
Fall 2020 | Doctoral | Masters | Graduate Certificate | Non-Degree Graduate | Total |
In State Resident | 27% (74) | 62% (223) | 56% (60) | 76% (26) | 49% (383) |
Out of State Resident | 58% (159) | 34% (121) | 41% (44) | 6% (2) | 42% (326) |
International | 15% (42) | 5% (17) | 4% (4) | 18% (6) | 9% (69) |
Total | 100% (275) | 100% (361) | 100% (108) | 100% (34) | 100% (778) |
residency_degree_type_multi_fig <-
residency_degree_type_multi_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_residency.csv')) %>%
ggplot(aes(x = term_cal_year, y = percent_by_deg)) +
geom_line(aes(color = residency_international_pal), size = 1.25) +
geom_point(aes(color = residency_international_pal), shape = 21, fill = "white", size = 2, stroke = 1) +
facet_wrap(~degree_type_fct ~., strip.position = "bottom") +
scale_y_continuous(labels=scales::percent, limits = c(0,1), breaks = seq(0,1, by = 0.2)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_color_identity(guide = "legend",
labels = residency_degree_type_multi_df$residency_international,
breaks = residency_degree_type_multi_df$residency_international_pal) +
labs(title = "OHSU SoM Annual Enrollment Percentages by Residency \n& Graduate Level",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
xlab("Calendar Year") +
theme_gs +
theme(axis.title.x = element_text(color = "gray22"),
panel.grid.major.y = element_line(color = "grey90")
)
residency_degree_type_multi_fig
residency_masters_group_fig <-
residency_masters_group_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_residency.csv')) %>%
ggplot(aes(fill = residency_international, x = residency_international, y = percent_by_mg)) +
geom_col(aes(fill = residency_international_pal)) +
geom_text(aes(label = scales::percent(percent_by_mg, accuracy = 1), y = percent_by_mg), vjust = -0.5, size = 3) +
# geom_col(position = "stack") +
labs(y = "Percent") +
facet_wrap(~masters_group_label, nrow = 1, strip.position = "bottom" ) +
scale_y_continuous(labels=scales::percent, limits = c(0,0.8)) +
geom_hline(yintercept = 0, color = "dark grey") +
# coord_flip() +
scale_fill_identity(guide = "legend",
labels = residency_masters_group_df$residency_international,
breaks = residency_masters_group_df$residency_international_pal) +
labs(title = "OHSU SoM Masters Student Enrollment \nby Residency & Masters Degree Group",
subtitle = paste0("Total HC = ", as.character(sum(residency_masters_group_df$count)), "*\n",
focus_term_desc),
caption = paste0("*", HC_masters_group_omit, " non-masters graduate students omitted")
) +
theme_gs +
theme(axis.text.x = element_blank())
residency_masters_group_fig
somgrad_diversity %>%
filter(residency_international %in% c("In State Resident", "Out of State Resident", "International"),
masters_group != "Non-Masters") %>%
count(masters_group, residency_international) %>%
pivot_wider(names_from = masters_group, values_from = n) %>%
adorn_totals(where = c("row","col")) %>%
adorn_percentages(denominator = "col") %>%
adorn_pct_formatting(digits = 0, rounding = "half up") %>%
adorn_ns() %>%
adorn_title(row_name = focus_term_desc, col_name = "") %>%
kbl(align = c("l", rep("c",5)), caption = paste0("OHSU SoM Masters Enrollment by Residency Status: ", focus_term_desc)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), font_size = 14, full_width = F, position = "left") %>%
row_spec(c(1), bold = T) %>%
column_spec(5, bold = T)
Fall 2020 | MBA | MPAS | MS & Other Masters | Total |
In State Resident | 78% (77) | 50% (42) | 58% (104) | 62% (223) |
Out of State Resident | 20% (20) | 50% (42) | 33% (59) | 34% (121) |
International | 2% (2) |
|
8% (15) | 5% (17) |
Total | 100% (99) | 100% (84) | 100% (178) | 100% (361) |
residency_masters_group_multi_fig <-
residency_masters_group_multi_df %>%
# write_csv(file = here::here('produced_data', 'degree_type_residency.csv')) %>%
ggplot(aes(x = term_cal_year, y = percent_by_deg)) +
geom_line(aes(color = residency_international_pal), size = 1.25) +
geom_point(aes(color = residency_international_pal), shape = 21, fill = "white", size = 2, stroke = 1) +
facet_wrap(masters_group ~., strip.position = "bottom") +
scale_y_continuous(labels=scales::percent, limits = c(0,1), breaks = seq(0,1, by = 0.2)) +
scale_x_continuous(breaks = seq(first_term_cal_year, focus_term_cal_year, by = 4)) +
scale_color_identity(guide = "legend",
labels = residency_masters_group_multi_df$residency_international,
breaks = residency_masters_group_multi_df$residency_international_pal) +
labs(title = "OHSU SoM Annual Masters Enrollment Percentages \nby Residency & Masters Degree Group",
subtitle = paste0(first_term_desc," (AY ", first_acad_year, ") - ", last_term_desc, " (AY ", last_acad_year, ")")) +
xlab("Calendar Year") +
theme_gs +
theme(axis.title.x = element_text(color = "gray22"),
panel.grid.major.y = element_line(color = "grey90")
)
residency_masters_group_multi_fig