/LanguagesAtLaGuardia2023

R script to analyze linguistic diversity at LaGuardia Community College

RProcedureLanguagesSpokenAtLaGuardia

Tomonori Nagano 2023-07-26

RProcedureLanguagesSpokenAtLaGuardia

  • Author: Tomonori Nagano tnagano@lagcc.cuny.edu
  • Date: Wednesday, November 11, 2020 (Updated on Wednesday, July 26, 2023)
  • Script purpose: This R script will analyze the IR data about languages spoken at LaGuardia Community College

Setting up the environment

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

library(ggplot2); library(xtable); library(gdata); library(Hmisc); library(RColorBrewer); library(foreign); 
library(reshape2);library(plyr)

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

setwd("~/Desktop/")

# 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%`)

Loading data

  • The data files were obtained from the Institutional Research at LaGuardia Community College
temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2016.csv")
tempData <- cbind(temp,"Fall2016")
names(tempData)[3] <- "Semester"

temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2017.csv")
tempData2 <- cbind(temp,"Fall2017")
names(tempData2)[3] <- "Semester"
tempData <- rbind.fill(tempData,tempData2)

temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2018.csv")
tempData2 <- cbind(temp,"Fall2018")
names(tempData2)[3] <- "Semester"
tempData <- rbind.fill(tempData,tempData2)

temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2019.csv")
tempData2 <- cbind(temp,"Fall2019")
names(tempData2)[3] <- "Semester"
tempData <- rbind.fill(tempData,tempData2)

temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2020.csv")
tempData2 <- cbind(temp,"Fall2020")
names(tempData2)[3] <- "Semester"
tempData <- rbind.fill(tempData,tempData2)

temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2021.csv")
tempData2 <- cbind(temp,"Fall2021")
names(tempData2)[3] <- "Semester"
tempData <- rbind.fill(tempData,tempData2)

temp <- read.csv("data/LanguagesSpokenAtLaGuardiaDataFall2022.csv")
tempData2 <- cbind(temp,"Fall2022")
names(tempData2)[3] <- "Semester"
tempData <- rbind.fill(tempData,tempData2)

thisData <- drop.levels(as.data.frame(tempData),reorder=FALSE)
names(thisData) <- c("Languages","Speakers","Semester")
thisData$Semester = as.factor(thisData$Semester)
thisData[thisData$Languages=="","Languages"] <- "No response"
thisData.noNA <- drop.levels(thisData[thisData$Languages!="No response",], reorder=FALSE)
summary(thisData.noNA)
##   Languages            Speakers           Semester 
##  Length:567         Min.   :   1.00   Fall2016:97  
##  Class :character   1st Qu.:   1.00   Fall2017:90  
##  Mode  :character   Median :   4.00   Fall2018:98  
##                     Mean   :  71.86   Fall2019:89  
##                     3rd Qu.:  14.00   Fall2020:77  
##                     Max.   :5868.00   Fall2021:62  
##                                       Fall2022:54

## Analyzing data

thisTable <- xtabs(Speakers ~ Languages + Semester, data=thisData)
thisTable
##                        Semester
## Languages               Fall2016 Fall2017 Fall2018 Fall2019 Fall2020 Fall2021 Fall2022
##   Afrikaans                    5        6        4        5        2        2        1
##   Akan                         5        7        5        2        3        2        0
##   Albanian                    47       33       41       25       11        7        6
##   Amharic                      2        2        2        1        1        0        1
##   Arabic                     181      149      163       91       61       33       14
##   Armenian                     4        4        7        4        1        0        0
##   Bengali                    373      295      285      191      123       88       49
##   Berber                       4        2        4        2        2        1        0
##   Bulgarian                    3        1        5        4        3        1        0
##   Burmese                     34       36       39       26       14        8        3
##   Byelorussian                 2        0        0        0        0        0        0
##   Cambodian                    0        1        1        1        0        0        0
##   Cantonese                   31        0        0        0        0        0        0
##   Catalan                      0        0        1        0        0        0        0
##   Cebuano                      5        6        7        4        2        2        1
##   Chiga                        0        1        1        2        0        0        0
##   Chinese                    411      364      325      211      128       66       47
##   Creole                      97       78       91       60       38       32       17
##   Czech                        3        1        1        1        0        0        0
##   Dutch-Flemish                5        3        4        2        3        2        1
##   Dzongkha                     8        6        7        6        2        1        1
##   Edo                          0        1        3        4        2        1        0
##   Efik                         0        0        1        1        0        0        0
##   English                   5868     4392     4823     3002     1987     1341      824
##   Esperanto                    1        0        1        0        0        0        0
##   Estonian                     0        0        1        0        0        0        0
##   Ewe                          2        0        0        0        1        1        0
##   Fang-Bulu                    0        0        0        1        0        1        1
##   Farsi                       10       10        9        4        3        2        1
##   Finnish                      0        0        1        1        0        0        0
##   Fon                          2        1        1        2        1        0        0
##   French                      89       61       65       32       23       14        5
##   Fula                        13       10       11        6        6        3        0
##   Fulakunda                    0        0        0        1        1        0        1
##   Futa Jalon                   3        2        1        2        0        0        0
##   Gaelic                       0        1        2        0        0        0        0
##   Galician                     1        1        0        0        0        0        0
##   Georgian                     5        6        6        5        1        0        0
##   German                       9        5        4        1        2        0        0
##   Greek                       38       21       30       23        8        5        1
##   Guarani                      0        0        2        1        1        1        1
##   Gujarati                    18        7       12        8        2        3        1
##   Hausa                        4        2        2        1        0        0        0
##   Hebrew                       3        3        6        4        0        1        0
##   Hindi                       44       20       24       15        8        4        3
##   Hungarian                    7        3        6        5        1        1        1
##   Ibibio                       0        0        0        1        0        0        0
##   Igbo                         9        6        6        5        5        4        4
##   Ilocano                      0        0        2        1        1        0        1
##   Indonesian                  12       16       12        5        3        1        0
##   Italian                      9        5        5        5        1        1        1
##   Japanese                    45       28       24       13       10        5        2
##   Javanese                     3        1        2        2        0        0        0
##   Kabyle                       0        1        0        0        0        0        0
##   Kannada                      1        0        0        0        0        0        0
##   Karen                        1        0        0        0        0        0        0
##   Kashmiri                     1        1        0        0        0        0        0
##   Kazakh                       2        0        2        1        1        2        2
##   Khmer                        1        0        0        1        1        0        0
##   Kikuyu                       0        1        0        0        0        0        0
##   Kirghiz                      1        0        0        0        0        0        0
##   Korean                     130       91       98       49       30       21       13
##   Kurdish                      0        0        1        0        0        0        0
##   Lao                          1        2        1        0        0        0        0
##   Latin                        4        4        5        4        3        3        1
##   Latvian                      0        0        0        0        0        1        0
##   Lithuanian                   1        1        2        2        1        0        0
##   Macedonian                   3        3        2        1        0        0        0
##   Malay                        1        0        1        1        1        0        0
##   Malayalam                    2        2        3        2        3        2        2
##   Malinke-Bambara-Dyula        8        0        4        2        2        3        0
##   Mandarin                    11        4        8        3        2        0        2
##   Marathi                      0        0        0        0        0        1        0
##   Moldavian                    1        0        1        0        0        0        0
##   Mongolian                    3        2        1        0        0        0        1
##   More                         2        1        2        2        1        0        0
##   Nepali                     218      258      255      146       58       32       19
##   No response               8529    11169    10351    12947    13447    12609    11702
##   Nyanja                       1        0        0        0        0        0        0
##   Pampangan                    1        1        1        1        1        0        0
##   Panay-Hiligaynon             0        0        1        0        0        0        0
##   Pangasinan                   1        0        0        0        0        0        0
##   Pashtu                       5        5        5        2        4        3        2
##   Persian                      7        9        6        4        2        2        2
##   Pilipino                    24       24       28       14        7        5        3
##   Polish                     119       82       73       42       23       12        8
##   Portuguese                  39       29       37       31       17       11        4
##   Punjabi                     39       29       40       23       15       12        5
##   Pushto                       0        2        1        2        1        0        0
##   Quechua                      0        1        0        0        0        0        0
##   Romanian                    37       27       23       10        4        2        1
##   Russian                     69       59       62       39       28       18        2
##   Serbo-Croatian              25       16       18       10        8        6        2
##   Shona                        1        1        0        1        0        0        0
##   Sinhalese                    5        5        2        1        1        0        0
##   Slovak                       7        2        2        1        0        0        0
##   Slovene                      0        1        1        1        0        0        0
##   Somali                       1        1        1        0        0        0        0
##   Soninke                      1        4        4        0        1        0        0
##   Sotho                        0        1        0        0        0        0        0
##   Spanish                   2298     1626     1775     1169      697      450      254
##   Sundanese                    0        0        1        0        0        0        0
##   Swahili                      2        1        1        1        0        0        1
##   Swedish                      1        2        2        0        0        0        0
##   Sylhetti                     0        0        1        1        1        0        0
##   Tagalog                    114       76      114       75       33       24       15
##   Tajiki                       3        4        5        2        4        1        1
##   Tamil                        2        0        2        0        1        0        0
##   Telugu                       1        0        1        0        1        1        1
##   Thai                        18       10       12        8        5        5        3
##   Tibetan                     96       61       88       58       39       28       17
##   Tigrinya                     1        2        0        0        0        0        0
##   Tiv                          1        1        0        0        0        0        0
##   Turkish                     21       14       10       11        3        2        0
##   Turkmen                      2        1        1        1        2        0        0
##   Twi-Fante                   13       10        7        6        4        3        1
##   Uighur                       1        0        0        0        0        0        0
##   Ukrainian                   28       16       18       12        5        4        1
##   Urdu                        73       53       48       32       20        7        5
##   Uzbek                       20       17       20        7        5        3        3
##   Vietnamese                   8        9       10        6        2        1        0
##   Wolof                       10        7       10        6        3        1        0
##   Wu                           0        0        0        1        1        0        0
##   Yoruba                      15       10       13        5        3        3        2
##   Zulu                         0        0        0        0        0        1        1
options(scipen = 15)
getOption("scipen")
## [1] 15
thisTable.sorted <- thisTable[order(-thisTable[,1]),]
thisTable.prop <- prop.table(thisTable.sorted,2)*100
thisTable.prop
##                        Semester
## Languages                   Fall2016     Fall2017     Fall2018     Fall2019     Fall2020     Fall2021     Fall2022
##   No response           43.859919778 57.703037818 53.810563527 69.859170129 79.323973572 84.550392275 89.574402939
##   English               30.175871645 22.690638562 25.072780204 16.198133060 11.721330816  8.992154496  6.307409675
##   Spanish               11.817340327  8.400495970  9.227490123  6.307667404  4.111609250  3.017501509  1.944274342
##   Chinese                2.113545202  1.880553833  1.689540445  1.138509685  0.755073148  0.442566888  0.359767299
##   Bengali                1.918132264  1.524075222  1.481597006  1.030594075  0.725578103  0.590089184  0.375076546
##   Nepali                 1.121053173  1.332920025  1.325639426  0.787783953  0.342142520  0.214577885  0.145437844
##   Arabic                 0.930782680  0.769787146  0.847369515  0.491016025  0.359839547  0.221283444  0.107164727
##   Korean                 0.668517947  0.470138458  0.509461426  0.264393244  0.176970269  0.140816737  0.099510104
##   Polish                 0.611951044  0.423641248  0.379496777  0.226622781  0.135677206  0.080466707  0.061236987
##   Tagalog                0.586238815  0.392643108  0.592638802  0.404683537  0.194667296  0.160933414  0.114819351
##   Creole                 0.498817237  0.402975821  0.473071325  0.323746830  0.224162341  0.214577885  0.130128598
##   Tibetan                0.493674792  0.315147758  0.457475567  0.312955269  0.230061350  0.187755649  0.130128598
##   French                 0.457677672  0.315147758  0.337908089  0.172664976  0.135677206  0.093877825  0.038273117
##   Urdu                   0.375398540  0.273816904  0.249532127  0.172664976  0.117980179  0.046938912  0.038273117
##   Russian                0.354828757  0.304815044  0.322312331  0.210435439  0.165172251  0.120700060  0.015309247
##   Albanian               0.241694950  0.170489771  0.213142025  0.134894512  0.064889099  0.046938912  0.045927740
##   Japanese               0.231410059  0.144657987  0.124766064  0.070145146  0.058990090  0.033527795  0.015309247
##   Hindi                  0.226267613  0.103327134  0.124766064  0.080936707  0.047192072  0.026822236  0.022963870
##   Portuguese             0.200555384  0.149824344  0.192347681  0.167269195  0.100283152  0.073761148  0.030618494
##   Punjabi                0.200555384  0.149824344  0.207943439  0.124102951  0.088485134  0.080466707  0.038273117
##   Greek                  0.195412938  0.108493490  0.155957580  0.124102951  0.047192072  0.033527795  0.007654623
##   Romanian               0.190270493  0.139491631  0.119567478  0.053957805  0.023596036  0.013411118  0.007654623
##   Burmese                0.174843155  0.185988841  0.202744853  0.140290293  0.082586126  0.053644471  0.022963870
##   Cantonese              0.159415818  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Ukrainian              0.143988481  0.082661707  0.093574548  0.064749366  0.029495045  0.026822236  0.007654623
##   Serbo-Croatian         0.128561144  0.082661707  0.093574548  0.053957805  0.047192072  0.040233353  0.015309247
##   Pilipino               0.123418698  0.123992560  0.145560408  0.075540927  0.041293063  0.033527795  0.022963870
##   Turkish                0.107991361  0.072328994  0.051985860  0.059353585  0.017697027  0.013411118  0.000000000
##   Uzbek                  0.102848915  0.087828064  0.103971720  0.037770463  0.029495045  0.020116677  0.022963870
##   Gujarati               0.092564023  0.036164497  0.062383032  0.043166244  0.011798018  0.020116677  0.007654623
##   Thai                   0.092564023  0.051663567  0.062383032  0.043166244  0.029495045  0.033527795  0.022963870
##   Yoruba                 0.077136686  0.051663567  0.067581618  0.026978902  0.017697027  0.020116677  0.015309247
##   Fula                   0.066851795  0.051663567  0.057184446  0.032374683  0.035394054  0.020116677  0.000000000
##   Twi-Fante              0.066851795  0.051663567  0.036390102  0.032374683  0.023596036  0.020116677  0.007654623
##   Indonesian             0.061709349  0.082661707  0.062383032  0.026978902  0.017697027  0.006705559  0.000000000
##   Mandarin               0.056566903  0.020665427  0.041588688  0.016187341  0.011798018  0.000000000  0.015309247
##   Farsi                  0.051424457  0.051663567  0.046787274  0.021583122  0.017697027  0.013411118  0.007654623
##   Wolof                  0.051424457  0.036164497  0.051985860  0.032374683  0.017697027  0.006705559  0.000000000
##   German                 0.046282012  0.025831783  0.020794344  0.005395780  0.011798018  0.000000000  0.000000000
##   Igbo                   0.046282012  0.030998140  0.031191516  0.026978902  0.029495045  0.026822236  0.030618494
##   Italian                0.046282012  0.025831783  0.025992930  0.026978902  0.005899009  0.006705559  0.007654623
##   Dzongkha               0.041139566  0.030998140  0.036390102  0.032374683  0.011798018  0.006705559  0.007654623
##   Malinke-Bambara-Dyula  0.041139566  0.000000000  0.020794344  0.010791561  0.011798018  0.020116677  0.000000000
##   Vietnamese             0.041139566  0.046497210  0.051985860  0.032374683  0.011798018  0.006705559  0.000000000
##   Hungarian              0.035997120  0.015499070  0.031191516  0.026978902  0.005899009  0.006705559  0.007654623
##   Persian                0.035997120  0.046497210  0.031191516  0.021583122  0.011798018  0.013411118  0.015309247
##   Slovak                 0.035997120  0.010332713  0.010397172  0.005395780  0.000000000  0.000000000  0.000000000
##   Afrikaans              0.025712229  0.030998140  0.020794344  0.026978902  0.011798018  0.013411118  0.007654623
##   Akan                   0.025712229  0.036164497  0.025992930  0.010791561  0.017697027  0.013411118  0.000000000
##   Cebuano                0.025712229  0.030998140  0.036390102  0.021583122  0.011798018  0.013411118  0.007654623
##   Dutch-Flemish          0.025712229  0.015499070  0.020794344  0.010791561  0.017697027  0.013411118  0.007654623
##   Georgian               0.025712229  0.030998140  0.031191516  0.026978902  0.005899009  0.000000000  0.000000000
##   Pashtu                 0.025712229  0.025831783  0.025992930  0.010791561  0.023596036  0.020116677  0.015309247
##   Sinhalese              0.025712229  0.025831783  0.010397172  0.005395780  0.005899009  0.000000000  0.000000000
##   Armenian               0.020569783  0.020665427  0.036390102  0.021583122  0.005899009  0.000000000  0.000000000
##   Berber                 0.020569783  0.010332713  0.020794344  0.010791561  0.011798018  0.006705559  0.000000000
##   Hausa                  0.020569783  0.010332713  0.010397172  0.005395780  0.000000000  0.000000000  0.000000000
##   Latin                  0.020569783  0.020665427  0.025992930  0.021583122  0.017697027  0.020116677  0.007654623
##   Bulgarian              0.015427337  0.005166357  0.025992930  0.021583122  0.017697027  0.006705559  0.000000000
##   Czech                  0.015427337  0.005166357  0.005198586  0.005395780  0.000000000  0.000000000  0.000000000
##   Futa Jalon             0.015427337  0.010332713  0.005198586  0.010791561  0.000000000  0.000000000  0.000000000
##   Hebrew                 0.015427337  0.015499070  0.031191516  0.021583122  0.000000000  0.006705559  0.000000000
##   Javanese               0.015427337  0.005166357  0.010397172  0.010791561  0.000000000  0.000000000  0.000000000
##   Macedonian             0.015427337  0.015499070  0.010397172  0.005395780  0.000000000  0.000000000  0.000000000
##   Mongolian              0.015427337  0.010332713  0.005198586  0.000000000  0.000000000  0.000000000  0.007654623
##   Tajiki                 0.015427337  0.020665427  0.025992930  0.010791561  0.023596036  0.006705559  0.007654623
##   Amharic                0.010284891  0.010332713  0.010397172  0.005395780  0.005899009  0.000000000  0.007654623
##   Byelorussian           0.010284891  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Ewe                    0.010284891  0.000000000  0.000000000  0.000000000  0.005899009  0.006705559  0.000000000
##   Fon                    0.010284891  0.005166357  0.005198586  0.010791561  0.005899009  0.000000000  0.000000000
##   Kazakh                 0.010284891  0.000000000  0.010397172  0.005395780  0.005899009  0.013411118  0.015309247
##   Malayalam              0.010284891  0.010332713  0.015595758  0.010791561  0.017697027  0.013411118  0.015309247
##   More                   0.010284891  0.005166357  0.010397172  0.010791561  0.005899009  0.000000000  0.000000000
##   Swahili                0.010284891  0.005166357  0.005198586  0.005395780  0.000000000  0.000000000  0.007654623
##   Tamil                  0.010284891  0.000000000  0.010397172  0.000000000  0.005899009  0.000000000  0.000000000
##   Turkmen                0.010284891  0.005166357  0.005198586  0.005395780  0.011798018  0.000000000  0.000000000
##   Esperanto              0.005142446  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Galician               0.005142446  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kannada                0.005142446  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Karen                  0.005142446  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kashmiri               0.005142446  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Khmer                  0.005142446  0.000000000  0.000000000  0.005395780  0.005899009  0.000000000  0.000000000
##   Kirghiz                0.005142446  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Lao                    0.005142446  0.010332713  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Lithuanian             0.005142446  0.005166357  0.010397172  0.010791561  0.005899009  0.000000000  0.000000000
##   Malay                  0.005142446  0.000000000  0.005198586  0.005395780  0.005899009  0.000000000  0.000000000
##   Moldavian              0.005142446  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Nyanja                 0.005142446  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Pampangan              0.005142446  0.005166357  0.005198586  0.005395780  0.005899009  0.000000000  0.000000000
##   Pangasinan             0.005142446  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Shona                  0.005142446  0.005166357  0.000000000  0.005395780  0.000000000  0.000000000  0.000000000
##   Somali                 0.005142446  0.005166357  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Soninke                0.005142446  0.020665427  0.020794344  0.000000000  0.005899009  0.000000000  0.000000000
##   Swedish                0.005142446  0.010332713  0.010397172  0.000000000  0.000000000  0.000000000  0.000000000
##   Telugu                 0.005142446  0.000000000  0.005198586  0.000000000  0.005899009  0.006705559  0.007654623
##   Tigrinya               0.005142446  0.010332713  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Tiv                    0.005142446  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Uighur                 0.005142446  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Cambodian              0.000000000  0.005166357  0.005198586  0.005395780  0.000000000  0.000000000  0.000000000
##   Catalan                0.000000000  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Chiga                  0.000000000  0.005166357  0.005198586  0.010791561  0.000000000  0.000000000  0.000000000
##   Edo                    0.000000000  0.005166357  0.015595758  0.021583122  0.011798018  0.006705559  0.000000000
##   Efik                   0.000000000  0.000000000  0.005198586  0.005395780  0.000000000  0.000000000  0.000000000
##   Estonian               0.000000000  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Fang-Bulu              0.000000000  0.000000000  0.000000000  0.005395780  0.000000000  0.006705559  0.007654623
##   Finnish                0.000000000  0.000000000  0.005198586  0.005395780  0.000000000  0.000000000  0.000000000
##   Fulakunda              0.000000000  0.000000000  0.000000000  0.005395780  0.005899009  0.000000000  0.007654623
##   Gaelic                 0.000000000  0.005166357  0.010397172  0.000000000  0.000000000  0.000000000  0.000000000
##   Guarani                0.000000000  0.000000000  0.010397172  0.005395780  0.005899009  0.006705559  0.007654623
##   Ibibio                 0.000000000  0.000000000  0.000000000  0.005395780  0.000000000  0.000000000  0.000000000
##   Ilocano                0.000000000  0.000000000  0.010397172  0.005395780  0.005899009  0.000000000  0.007654623
##   Kabyle                 0.000000000  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kikuyu                 0.000000000  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kurdish                0.000000000  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Latvian                0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.006705559  0.000000000
##   Marathi                0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.006705559  0.000000000
##   Panay-Hiligaynon       0.000000000  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Pushto                 0.000000000  0.010332713  0.005198586  0.010791561  0.005899009  0.000000000  0.000000000
##   Quechua                0.000000000  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Slovene                0.000000000  0.005166357  0.005198586  0.005395780  0.000000000  0.000000000  0.000000000
##   Sotho                  0.000000000  0.005166357  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Sundanese              0.000000000  0.000000000  0.005198586  0.000000000  0.000000000  0.000000000  0.000000000
##   Sylhetti               0.000000000  0.000000000  0.005198586  0.005395780  0.005899009  0.000000000  0.000000000
##   Wu                     0.000000000  0.000000000  0.000000000  0.005395780  0.005899009  0.000000000  0.000000000
##   Zulu                   0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.006705559  0.007654623
thisTable.noNA <- xtabs(Speakers ~ Languages + Semester, data=thisData.noNA)
thisTable.noNA_sorted <- thisTable.noNA[order(-thisTable.noNA[,1]),]
thisTable.noNA_prop <- prop.table(thisTable.noNA_sorted,2)*100
thisTable.noNA_prop
##                        Semester
## Languages                   Fall2016     Fall2017     Fall2018     Fall2019     Fall2020     Fall2021     Fall2022
##   English               53.751030503 53.646024185 54.282498593 53.741496599 56.690442225 58.203125000 60.499265786
##   Spanish               21.049738939 19.860754855 19.977490152 20.927318296 19.885877318 19.531250000 18.649045521
##   Chinese                3.764770541  4.446073043  3.657850310  3.777300394  3.651925820  2.864583333  3.450807636
##   Bengali                3.416689567  3.603273482  3.207653348  3.419262442  3.509272468  3.819444444  3.597650514
##   Nepali                 1.996885591  3.151337486  2.870005627  2.613677050  1.654778887  1.388888889  1.395007342
##   Arabic                 1.657964642  1.819958471  1.834552617  1.629072682  1.740370899  1.432291667  1.027900147
##   Korean                 1.190803334  1.111518261  1.102982555  0.877192982  0.855920114  0.911458333  0.954478708
##   Polish                 1.090043052  1.001587883  0.821609454  0.751879699  0.656205421  0.520833333  0.587371512
##   Tagalog                1.044242924  0.928300965  1.283061339  1.342642320  0.941512126  1.041666667  1.101321586
##   Creole                 0.888522488  0.952729938  1.024198087  1.074113856  1.084165478  1.388888889  1.248164464
##   Tibetan                0.879362462  0.745083669  0.990433315  1.038310061  1.112696148  1.215277778  1.248164464
##   French                 0.815242283  0.745083669  0.731570062  0.572860723  0.656205421  0.607638889  0.367107195
##   Urdu                   0.668681872  0.647367778  0.540236353  0.572860723  0.570613409  0.303819444  0.367107195
##   Russian                0.632041770  0.720654696  0.697805290  0.698174006  0.798858773  0.781250000  0.146842878
##   Albanian               0.430521205  0.403078051  0.461451885  0.447547440  0.313837375  0.303819444  0.440528634
##   Japanese               0.412201154  0.342005619  0.270118177  0.232724669  0.285306705  0.217013889  0.146842878
##   Hindi                  0.403041129  0.244289728  0.270118177  0.268528464  0.228245364  0.173611111  0.220264317
##   Portuguese             0.357241000  0.354220105  0.416432189  0.554958826  0.485021398  0.477430556  0.293685756
##   Punjabi                0.357241000  0.354220105  0.450196961  0.411743645  0.427960057  0.520833333  0.367107195
##   Greek                  0.348080975  0.256504214  0.337647721  0.411743645  0.228245364  0.217013889  0.073421439
##   Romanian               0.338920949  0.329791132  0.258863253  0.179018976  0.114122682  0.086805556  0.073421439
##   Burmese                0.311440872  0.439721510  0.438942037  0.465449338  0.399429387  0.347222222  0.220264317
##   Cantonese              0.283960795  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Ukrainian              0.256480718  0.195431782  0.202588633  0.214822771  0.142653352  0.173611111  0.073421439
##   Serbo-Croatian         0.229000641  0.195431782  0.202588633  0.179018976  0.228245364  0.260416667  0.146842878
##   Pilipino               0.219840616  0.293147673  0.315137873  0.250626566  0.199714693  0.217013889  0.220264317
##   Turkish                0.192360539  0.171002809  0.112549240  0.196920874  0.085592011  0.086805556  0.000000000
##   Uzbek                  0.183200513  0.207646268  0.225098481  0.125313283  0.142653352  0.130208333  0.220264317
##   Gujarati               0.164880462  0.085501405  0.135059088  0.143215181  0.057061341  0.130208333  0.073421439
##   Thai                   0.164880462  0.122144864  0.135059088  0.143215181  0.142653352  0.217013889  0.220264317
##   Yoruba                 0.137400385  0.122144864  0.146314012  0.089509488  0.085592011  0.130208333  0.146842878
##   Fula                   0.119080333  0.122144864  0.123804164  0.107411386  0.171184023  0.130208333  0.000000000
##   Twi-Fante              0.119080333  0.122144864  0.078784468  0.107411386  0.114122682  0.130208333  0.073421439
##   Indonesian             0.109920308  0.195431782  0.135059088  0.089509488  0.085592011  0.043402778  0.000000000
##   Mandarin               0.100760282  0.048857946  0.090039392  0.053705693  0.057061341  0.000000000  0.146842878
##   Farsi                  0.091600256  0.122144864  0.101294316  0.071607590  0.085592011  0.086805556  0.073421439
##   Wolof                  0.091600256  0.085501405  0.112549240  0.107411386  0.085592011  0.043402778  0.000000000
##   German                 0.082440231  0.061072432  0.045019696  0.017901898  0.057061341  0.000000000  0.000000000
##   Igbo                   0.082440231  0.073286918  0.067529544  0.089509488  0.142653352  0.173611111  0.293685756
##   Italian                0.082440231  0.061072432  0.056274620  0.089509488  0.028530670  0.043402778  0.073421439
##   Dzongkha               0.073280205  0.073286918  0.078784468  0.107411386  0.057061341  0.043402778  0.073421439
##   Malinke-Bambara-Dyula  0.073280205  0.000000000  0.045019696  0.035803795  0.057061341  0.130208333  0.000000000
##   Vietnamese             0.073280205  0.109930377  0.112549240  0.107411386  0.057061341  0.043402778  0.000000000
##   Hungarian              0.064120180  0.036643459  0.067529544  0.089509488  0.028530670  0.043402778  0.073421439
##   Persian                0.064120180  0.109930377  0.067529544  0.071607590  0.057061341  0.086805556  0.146842878
##   Slovak                 0.064120180  0.024428973  0.022509848  0.017901898  0.000000000  0.000000000  0.000000000
##   Afrikaans              0.045800128  0.073286918  0.045019696  0.089509488  0.057061341  0.086805556  0.073421439
##   Akan                   0.045800128  0.085501405  0.056274620  0.035803795  0.085592011  0.086805556  0.000000000
##   Cebuano                0.045800128  0.073286918  0.078784468  0.071607590  0.057061341  0.086805556  0.073421439
##   Dutch-Flemish          0.045800128  0.036643459  0.045019696  0.035803795  0.085592011  0.086805556  0.073421439
##   Georgian               0.045800128  0.073286918  0.067529544  0.089509488  0.028530670  0.000000000  0.000000000
##   Pashtu                 0.045800128  0.061072432  0.056274620  0.035803795  0.114122682  0.130208333  0.146842878
##   Sinhalese              0.045800128  0.061072432  0.022509848  0.017901898  0.028530670  0.000000000  0.000000000
##   Armenian               0.036640103  0.048857946  0.078784468  0.071607590  0.028530670  0.000000000  0.000000000
##   Berber                 0.036640103  0.024428973  0.045019696  0.035803795  0.057061341  0.043402778  0.000000000
##   Hausa                  0.036640103  0.024428973  0.022509848  0.017901898  0.000000000  0.000000000  0.000000000
##   Latin                  0.036640103  0.048857946  0.056274620  0.071607590  0.085592011  0.130208333  0.073421439
##   Bulgarian              0.027480077  0.012214486  0.056274620  0.071607590  0.085592011  0.043402778  0.000000000
##   Czech                  0.027480077  0.012214486  0.011254924  0.017901898  0.000000000  0.000000000  0.000000000
##   Futa Jalon             0.027480077  0.024428973  0.011254924  0.035803795  0.000000000  0.000000000  0.000000000
##   Hebrew                 0.027480077  0.036643459  0.067529544  0.071607590  0.000000000  0.043402778  0.000000000
##   Javanese               0.027480077  0.012214486  0.022509848  0.035803795  0.000000000  0.000000000  0.000000000
##   Macedonian             0.027480077  0.036643459  0.022509848  0.017901898  0.000000000  0.000000000  0.000000000
##   Mongolian              0.027480077  0.024428973  0.011254924  0.000000000  0.000000000  0.000000000  0.073421439
##   Tajiki                 0.027480077  0.048857946  0.056274620  0.035803795  0.114122682  0.043402778  0.073421439
##   Amharic                0.018320051  0.024428973  0.022509848  0.017901898  0.028530670  0.000000000  0.073421439
##   Byelorussian           0.018320051  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Ewe                    0.018320051  0.000000000  0.000000000  0.000000000  0.028530670  0.043402778  0.000000000
##   Fon                    0.018320051  0.012214486  0.011254924  0.035803795  0.028530670  0.000000000  0.000000000
##   Kazakh                 0.018320051  0.000000000  0.022509848  0.017901898  0.028530670  0.086805556  0.146842878
##   Malayalam              0.018320051  0.024428973  0.033764772  0.035803795  0.085592011  0.086805556  0.146842878
##   More                   0.018320051  0.012214486  0.022509848  0.035803795  0.028530670  0.000000000  0.000000000
##   Swahili                0.018320051  0.012214486  0.011254924  0.017901898  0.000000000  0.000000000  0.073421439
##   Tamil                  0.018320051  0.000000000  0.022509848  0.000000000  0.028530670  0.000000000  0.000000000
##   Turkmen                0.018320051  0.012214486  0.011254924  0.017901898  0.057061341  0.000000000  0.000000000
##   Esperanto              0.009160026  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Galician               0.009160026  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kannada                0.009160026  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Karen                  0.009160026  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kashmiri               0.009160026  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Khmer                  0.009160026  0.000000000  0.000000000  0.017901898  0.028530670  0.000000000  0.000000000
##   Kirghiz                0.009160026  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Lao                    0.009160026  0.024428973  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Lithuanian             0.009160026  0.012214486  0.022509848  0.035803795  0.028530670  0.000000000  0.000000000
##   Malay                  0.009160026  0.000000000  0.011254924  0.017901898  0.028530670  0.000000000  0.000000000
##   Moldavian              0.009160026  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Nyanja                 0.009160026  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Pampangan              0.009160026  0.012214486  0.011254924  0.017901898  0.028530670  0.000000000  0.000000000
##   Pangasinan             0.009160026  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Shona                  0.009160026  0.012214486  0.000000000  0.017901898  0.000000000  0.000000000  0.000000000
##   Somali                 0.009160026  0.012214486  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Soninke                0.009160026  0.048857946  0.045019696  0.000000000  0.028530670  0.000000000  0.000000000
##   Swedish                0.009160026  0.024428973  0.022509848  0.000000000  0.000000000  0.000000000  0.000000000
##   Telugu                 0.009160026  0.000000000  0.011254924  0.000000000  0.028530670  0.043402778  0.073421439
##   Tigrinya               0.009160026  0.024428973  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Tiv                    0.009160026  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Uighur                 0.009160026  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Cambodian              0.000000000  0.012214486  0.011254924  0.017901898  0.000000000  0.000000000  0.000000000
##   Catalan                0.000000000  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Chiga                  0.000000000  0.012214486  0.011254924  0.035803795  0.000000000  0.000000000  0.000000000
##   Edo                    0.000000000  0.012214486  0.033764772  0.071607590  0.057061341  0.043402778  0.000000000
##   Efik                   0.000000000  0.000000000  0.011254924  0.017901898  0.000000000  0.000000000  0.000000000
##   Estonian               0.000000000  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Fang-Bulu              0.000000000  0.000000000  0.000000000  0.017901898  0.000000000  0.043402778  0.073421439
##   Finnish                0.000000000  0.000000000  0.011254924  0.017901898  0.000000000  0.000000000  0.000000000
##   Fulakunda              0.000000000  0.000000000  0.000000000  0.017901898  0.028530670  0.000000000  0.073421439
##   Gaelic                 0.000000000  0.012214486  0.022509848  0.000000000  0.000000000  0.000000000  0.000000000
##   Guarani                0.000000000  0.000000000  0.022509848  0.017901898  0.028530670  0.043402778  0.073421439
##   Ibibio                 0.000000000  0.000000000  0.000000000  0.017901898  0.000000000  0.000000000  0.000000000
##   Ilocano                0.000000000  0.000000000  0.022509848  0.017901898  0.028530670  0.000000000  0.073421439
##   Kabyle                 0.000000000  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kikuyu                 0.000000000  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Kurdish                0.000000000  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Latvian                0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.043402778  0.000000000
##   Marathi                0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.043402778  0.000000000
##   Panay-Hiligaynon       0.000000000  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Pushto                 0.000000000  0.024428973  0.011254924  0.035803795  0.028530670  0.000000000  0.000000000
##   Quechua                0.000000000  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Slovene                0.000000000  0.012214486  0.011254924  0.017901898  0.000000000  0.000000000  0.000000000
##   Sotho                  0.000000000  0.012214486  0.000000000  0.000000000  0.000000000  0.000000000  0.000000000
##   Sundanese              0.000000000  0.000000000  0.011254924  0.000000000  0.000000000  0.000000000  0.000000000
##   Sylhetti               0.000000000  0.000000000  0.011254924  0.017901898  0.028530670  0.000000000  0.000000000
##   Wu                     0.000000000  0.000000000  0.000000000  0.017901898  0.028530670  0.000000000  0.000000000
##   Zulu                   0.000000000  0.000000000  0.000000000  0.000000000  0.000000000  0.043402778  0.073421439
write.table(thisTable.sorted,"LanguagesSpokenAtLaGuardiaAllDataSummary.txt",sep="\t")
write.csv(thisTable.sorted, file= "LanguagesSpokenAtLaGuardiaAllDataTable.csv", row.names = TRUE)
write.csv(thisTable.prop, file= "LanguagesSpokenAtLaGuardiaAllDataTableProp.csv", row.names = TRUE)
write.csv(thisTable.noNA_sorted, file= "LanguagesSpokenAtLaGuardiaAllDataNoNATable.csv", row.names = TRUE)
write.csv(thisTable.noNA_prop, file= "LanguagesSpokenAtLaGuardiaAllDataNoNATableProp.csv", row.names = TRUE)

# the numbers of languages in each year
count(thisTable.noNA[,1] > 0)
##       x freq
## 1 FALSE   27
## 2  TRUE   97
count(thisTable.noNA[,2] > 0)
##       x freq
## 1 FALSE   34
## 2  TRUE   90
count(thisTable.noNA[,3] > 0)
##       x freq
## 1 FALSE   26
## 2  TRUE   98
count(thisTable.noNA[,4] > 0)
##       x freq
## 1 FALSE   35
## 2  TRUE   89
count(thisTable.noNA[,5] > 0)
##       x freq
## 1 FALSE   47
## 2  TRUE   77
count(thisTable.noNA[,6] > 0)
##       x freq
## 1 FALSE   62
## 2  TRUE   62
count(thisTable.noNA[,7] > 0)
##       x freq
## 1 FALSE   70
## 2  TRUE   54