/LaGuardiaAAPI2023

AAPI information at LaGuardia Community College

RProcedureAAPILaGuardiaWithCUNYData2024

Tomonori Nagano 2023-12-04

RProcedureAAPILaGuardiaIPEDS2023

  • To analyze the AAPI student, faculty, staff data at LaGuardia Community College using data from CUNY’s OAREDA and LaGuardia IR.

Setting up the environment

# clear the cache
rm(list = ls())

library(ggplot2); library(gdata); library(ggthemes); library(plyr); 
library(memisc); library(reshape2); library(devtools)
library(dplyr);
library(knitr); 
library(kableExtra); # something is wrong with kableExtra. Had to install directly from GitHub "devtools::install_github("kupietz/kableExtra")"
library(data.table);
#library(devtools); library(ipeds); library(xtable); library(openxlsx); library(foreign); 
#install.packages("acs"); install.packages("ggplot2"); install.packages("maps"); install.packages("mapdata"); 

# turning off scientific notation of numbers
options(scipen=999)

#setwd("~/Desktop/")
setwd("~/Dropbox/Documents/USB/700LaGuardia/eventsOnCampus/AsianHeritageCelebration/AHC2024/")

# change the default width
width.default <- getOption("width"); options(width=120)

# the add comma fonction
addComma<-function(x) {format(x, big.mark = ',', trim = TRUE, scientific = FALSE)}

# creating a notin function
`%notin%` <- Negate(`%in%`)

Analyzing students’ headcounts by race/ethnicity between 1990 and 2022

  • The data were obtained from CUNY’s OAREDA (Office of Applied Research, Evaluation, and Data Analytics) website
  • Summary
    • The total number of students (headcounts) peaked in 2014, with a headcount of 20,231. However, since then, the number has been declining, particularly after 2020 (probably due ot the pandemic). This decline in student enrollment is reflected among AAPI students, as they have also experienced a sharp decrease after 2020.
    • The AAPI student population at LaGuardia has seen the largest increase in enrollment over the years. From 1990 to 2022, the number of AAPI students rose from 1,406 to 3,298, an increase of 1,892. Hispanic students also saw significant growth, with an increase of 1,772 during the same period.
    • In terms of proportions, AAPI students accounted for 25.2% of the total student headcount at LaGuardia in 2022. This proportion continued to increase even after 2020. While there was a decline in AAPI students after 2020, the rate of decline was not as steep as students from other racial/ethnic backgrounds. As a result, AAPI students are now more represented than students from other racial/ethnic backgrounds in recent years.
tempData <- read.csv("AHC2024CUNY_OAREDA_StudentDataBook2023.csv", sep = ",")
# change to factors
tempData$Year <- as.factor(tempData$Year)
tempData$Race <- as.factor(tempData$Race)
# create the sum of parttime and fulltime students
tempData$Headcount = tempData$Fulltime + tempData$Partitme
# create a table
tableRace = dcast(tempData, Year ~ Race, value.var = "Headcount")
## Warning in dcast(tempData, Year ~ Race, value.var = "Headcount"): The dcast generic in data.table has been passed a
## data.frame and will attempt to redirect to the reshape2::dcast; please note that reshape2 is deprecated, and this
## redirection is now deprecated as well. Please do this redirection yourself like reshape2::dcast(tempData). In the next
## version, this warning will become an error.
# double checking the total is accurate
tableRace$sum = tableRace$White + tableRace$Hispanic + tableRace$Black + tableRace$`Asian or Pacific Islander` + tableRace$`American Indian or Native American`
tableRace[,c("Year", "Total","sum")]
##    Year Total   sum
## 1  1990  9170  9170
## 2  1991  9399  9399
## 3  1992  9762  9762
## 4  1993 10491 10491
## 5  1994 11004 11004
## 6  1995 10695 10695
## 7  1996 11080 11083
## 8  1997 10925 10925
## 9  1998 11058 11058
## 10 1999 11282 11282
## 11 2000 11778 11778
## 12 2001 11426 11426
## 13 2002 12599 12599
## 14 2003 12768 12768
## 15 2004 13592 13592
## 16 2005 13489 13489
## 17 2006 14185 14185
## 18 2007 15169 15181
## 19 2008 15540 15540
## 20 2009 17028 17028
## 21 2010 17569 17569
## 22 2011 18623 18623
## 23 2012 19287 19287
## 24 2013 19773 19773
## 25 2014 20231 20231
## 26 2015 19582 19582
## 27 2016 19456 19456
## 28 2017 19373 19373
## 29 2018 19300 19300
## 30 2019 18555 18555
## 31 2020 16971 16971
## 32 2021 14919 14919
## 33 2022 13064 13064
tableRaceNew = tableRace[,c("Year", "White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Total")]

# print the table in HTML
tableRaceNew %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
Year White Hispanic Black Asian or Pacific Islander American Indian or Native American Total
1990 1741 3395 2603 1406 25 9170
1991 1722 3600 2565 1494 18 9399
1992 1812 3711 2635 1589 15 9762
1993 2014 4004 2774 1681 18 10491
1994 2207 4227 2768 1777 25 11004
1995 2064 4244 2658 1709 20 10695
1996 2115 4573 2677 1704 14 11080
1997 2124 4465 2535 1780 21 10925
1998 2226 4387 2458 1973 14 11058
1999 2221 4435 2469 2138 19 11282
2000 2381 4558 2427 2383 29 11778
2001 2281 4431 2246 2446 22 11426
2002 2578 4934 2509 2563 15 12599
2003 2572 5089 2556 2539 12 12768
2004 2706 5374 2852 2643 17 13592
2005 2561 5232 3007 2664 25 13489
2006 2583 5419 3119 3041 23 14185
2007 2546 6032 3142 3412 49 15169
2008 2533 6143 3063 3771 30 15540
2009 2763 6857 3210 4148 50 17028
2010 2865 7223 3350 4067 64 17569
2011 2983 7554 3637 4374 75 18623
2012 3118 7964 3845 4300 60 19287
2013 2995 8402 4056 4245 75 19773
2014 2928 8611 4305 4315 72 20231
2015 2730 8537 4036 4211 68 19582
2016 2623 8602 3809 4353 69 19456
2017 2599 8496 3594 4616 68 19373
2018 2683 8180 3667 4699 71 19300
2019 2638 7705 3598 4536 78 18555
2020 2394 6862 3568 4073 74 16971
2021 2101 6014 3285 3467 52 14919
2022 1790 5167 2754 3298 55 13064
# calculating the proportion table
tableRaceProportion = cbind(levels(tableRaceNew[,"Year"]),format(prop.table(data.matrix(tableRaceNew[,c("White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American")]),margin = 1)*100, digits=1))
tableRaceProportion = as.data.table(tableRaceProportion)
tableRaceProportion %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
V1 White Hispanic Black Asian or Pacific Islander American Indian or Native American
1990 18.99 37.02 28.39 15.33 0.27
1991 18.32 38.30 27.29 15.90 0.19
1992 18.56 38.01 26.99 16.28 0.15
1993 19.20 38.17 26.44 16.02 0.17
1994 20.06 38.41 25.15 16.15 0.23
1995 19.30 39.68 24.85 15.98 0.19
1996 19.08 41.26 24.15 15.37 0.13
1997 19.44 40.87 23.20 16.29 0.19
1998 20.13 39.67 22.23 17.84 0.13
1999 19.69 39.31 21.88 18.95 0.17
2000 20.22 38.70 20.61 20.23 0.25
2001 19.96 38.78 19.66 21.41 0.19
2002 20.46 39.16 19.91 20.34 0.12
2003 20.14 39.86 20.02 19.89 0.09
2004 19.91 39.54 20.98 19.45 0.13
2005 18.99 38.79 22.29 19.75 0.19
2006 18.21 38.20 21.99 21.44 0.16
2007 16.77 39.73 20.70 22.48 0.32
2008 16.30 39.53 19.71 24.27 0.19
2009 16.23 40.27 18.85 24.36 0.29
2010 16.31 41.11 19.07 23.15 0.36
2011 16.02 40.56 19.53 23.49 0.40
2012 16.17 41.29 19.94 22.29 0.31
2013 15.15 42.49 20.51 21.47 0.38
2014 14.47 42.56 21.28 21.33 0.36
2015 13.94 43.60 20.61 21.50 0.35
2016 13.48 44.21 19.58 22.37 0.35
2017 13.42 43.85 18.55 23.83 0.35
2018 13.90 42.38 19.00 24.35 0.37
2019 14.22 41.53 19.39 24.45 0.42
2020 14.11 40.43 21.02 24.00 0.44
2021 14.08 40.31 22.02 23.24 0.35
2022 13.70 39.55 21.08 25.24 0.42

Analyzing faculty and staff’s racial/ethnic diversity at LaGuardia Community College between 2020 and 2022

  • The data were obtained from CUNY’s Office of Recruitment and Diversity (ORD) website
  • Summary
    • The representation of AAPI instructional staff in 2022 was only 16.6%, which slightly decreased from 16.9% in 2020. However, the AAPI student body at LaGuardia increased from 24.0% in 2020 to 25.5% in 2022.
    • When looking at faculty data, which excludes full-time instructional employees without a faculty appointment, the representation of AAPI increases slightly to 18.4%. This is largely due to a lower representation of Hispanic instructional employees with faculty appointments, at just 13.1%.
    • In terms of HEO titles (staff), only 14.2% of HEO titles were occupied by AAPI individuals in 2022. Again, the representation of AAPI staff has slightly decreased since 2020 when it was 15.2%. In contrast, other minority groups such as Hispanic (33%) and Black (25.4%) are better represented among the HEO titles.
tempData <- read.csv("AHC2024CUNY_ORDInstructionalStaff.csv", skip = 0, sep = ",")

tempData2 <- reshape2::melt(tempData, id.vars = c("Group", "Attribute"))
levels(tempData2$variable) <- c("2020","2021","2022")
tempData2$Group <- as.factor(tempData2$Group)
tempData2$Attribute <- as.factor(tempData2$Attribute)
names(tempData2) <- c("Group","Attribute","Year","Count")
  • Analyzing Instructional Staff (Fulltime only) data
tempData3 <- drop.levels(tempData2[tempData2$Group=="Instrucitonal Staff",],reorder=FALSE)
tableRace.Inst = reshape2::dcast(tempData3, Year ~ Attribute, value.var = "Count")

# double checking the total is accurate
tableRace.Inst$sum = tableRace.Inst$White + tableRace.Inst$Hispanic + tableRace.Inst$Black + tableRace.Inst$`Asian or Pacific Islander` + tableRace.Inst$`American Indian or Native American` + tableRace.Inst$`Italian American` + tableRace.Inst$`Two or More Races`
tableRace.Inst[,c("Year", "sum")]
##   Year sum
## 1 2020 791
## 2 2021 745
## 3 2022 736
tableRaceNew.Inst = tableRace.Inst[,c("Year", "White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Italian American","Two or More Races","sum")]

# print the table in HTML
tableRaceNew.Inst %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
Year White Hispanic Black Asian or Pacific Islander American Indian or Native American Italian American Two or More Races sum
2020 302 161 153 134 0 36 5 791
2021 279 159 140 128 0 34 5 745
2022 272 169 134 122 0 35 4 736
# calculating the proportion table
tableRaceProportion.Inst = cbind(levels(tableRaceNew.Inst[,"Year"]),format(prop.table(data.matrix(tableRaceNew.Inst[,c("White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Italian American","Two or More Races")]),margin = 1)*100, digits=1))
tableRaceProportion.Inst = as.data.table(tableRaceProportion.Inst)
tableRaceProportion.Inst %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
V1 White Hispanic Black Asian or Pacific Islander American Indian or Native American Italian American Two or More Races
2020 38.2 20.4 19.3 16.9 0.0 4.6 0.6
2021 37.4 21.3 18.8 17.2 0.0 4.6 0.7
2022 37.0 23.0 18.2 16.6 0.0 4.8 0.5
  • Analyzing Faculty (Fulltime only) data
tempData3 <- drop.levels(tempData2[tempData2$Group=="Faculty",],reorder=FALSE)
tableRace.Fac = reshape2::dcast(tempData3, Year ~ Attribute, value.var = "Count")

# double checking the total is accurate
tableRace.Fac$sum = tableRace.Fac$White + tableRace.Fac$Hispanic + tableRace.Fac$Black + tableRace.Fac$`Asian or Pacific Islander` + tableRace.Fac$`American Indian or Native American` + tableRace.Fac$`Italian American` + tableRace.Fac$`Two or More Races`
tableRace.Fac[,c("Year", "sum")]
##   Year sum
## 1 2020 383
## 2 2021 362
## 3 2022 375
tableRaceNew.Fac = tableRace.Fac[,c("Year", "White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Italian American","Two or More Races","sum")]

# print the table in HTML
tableRaceNew.Fac %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
Year White Hispanic Black Asian or Pacific Islander American Indian or Native American Italian American Two or More Races sum
2020 196 43 52 71 0 19 2 383
2021 181 42 51 69 0 18 1 362
2022 188 49 49 69 0 19 1 375
# calculating the proportion table
tableRaceProportion.Fac = cbind(levels(tableRaceNew.Fac[,"Year"]),format(prop.table(data.matrix(tableRaceNew.Fac[,c("White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Italian American","Two or More Races")]),margin = 1)*100, digits=1))
tableRaceProportion.Fac = as.data.table(tableRaceProportion.Fac)
tableRaceProportion.Fac %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
V1 White Hispanic Black Asian or Pacific Islander American Indian or Native American Italian American Two or More Races
2020 51.2 11.2 13.6 18.5 0.0 5.0 0.5
2021 50.0 11.6 14.1 19.1 0.0 5.0 0.3
2022 50.1 13.1 13.1 18.4 0.0 5.1 0.3
  • Analyzing HEO (Fulltime only) data
tempData3 <- drop.levels(tempData2[tempData2$Group=="HEO",],reorder=FALSE)
tableRace.HEO = reshape2::dcast(tempData3, Year ~ Attribute, value.var = "Count")

# double checking the total is accurate
tableRace.HEO$sum = tableRace.HEO$White + tableRace.HEO$Hispanic + tableRace.HEO$Black + tableRace.HEO$`Asian or Pacific Islander` + tableRace.HEO$`American Indian or Native American` + tableRace.HEO$`Italian American` + tableRace.HEO$`Two or More Races`
tableRace.HEO[,c("Year", "sum")]
##   Year sum
## 1 2020 348
## 2 2021 324
## 3 2022 303
tableRaceNew.HEO = tableRace.HEO[,c("Year", "White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Italian American","Two or More Races","sum")]

# print the table in HTML
tableRaceNew.HEO %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
Year White Hispanic Black Asian or Pacific Islander American Indian or Native American Italian American Two or More Races sum
2020 87 102 91 53 0 12 3 348
2021 81 100 79 49 0 11 4 324
2022 70 100 77 43 0 11 2 303
# calculating the proportion table
tableRaceProportion.HEO = cbind(levels(tableRaceNew.HEO[,"Year"]),format(prop.table(data.matrix(tableRaceNew.HEO[,c("White","Hispanic","Black","Asian or Pacific Islander","American Indian or Native American","Italian American","Two or More Races")]),margin = 1)*100, digits=1))
tableRaceProportion.HEO = as.data.table(tableRaceProportion.HEO)
tableRaceProportion.HEO %>% knitr::kable("html") %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"))
V1 White Hispanic Black Asian or Pacific Islander American Indian or Native American Italian American Two or More Races
2020 25.0 29.3 26.1 15.2 0.0 3.4 0.9
2021 25.0 30.9 24.4 15.1 0.0 3.4 1.2
2022 23.1 33.0 25.4 14.2 0.0 3.6 0.7