Tworzenie nowego zestawu danych na podstawie tego, czego się nauczyliśmy

Dowiedzieliśmy się dotychczas, że wiek, wykształcenie i pochodzenie etniczne są ważnymi czynnikami w zrozumieniu sposobu, w jaki ludzie głosowali w referendum w sprawie Brexitu. Młodsze osoby z wyższym wykształceniem kojarzone są z głosami za pozostaniem w UE. Starsi biali ludzie są kojarzeni z głosami za opuszczeniem UE. Możemy teraz wykorzystać tę wiedzę, aby stworzyć bardziej zwięzły zestaw danych, który obejmuje tę wiedzę. Najpierw dodajemy odpowiednie zmienne, a następnie usuwamy nieistotne zmienne. Nasze nowe istotne zmienne to dwie grupy wiekowe (dorośli poniżej i powyżej 45 lat), dwie grupy etniczne (biali i nie-biali) oraz dwie grupy edukacji (wysoki i niski poziom wykształcenia):

data$Age_18to44 <- (

data$Age_18to19 +

data$Age_20to24  +

data$Age_25to29 +

data$Age_30to44

)

data$Age_45plus <- (

data$Age_45to59 +

data$Age_60to64 +

data$Age_65to74 +

data$Age_75to84 +

data$Age_85to89 +

data$Age_90plus

)

data$NonWhite <- (

data$Black +

data$Asian +

data$Indian +

data$Pakistani

)

data$HighEducationLevel <- data$L4Quals_plus

data$LowEducationLevel1 <- data$oQuals

Teraz usuwamy stare zmienne, które były używane do tworzenia naszych nowo dodanych zmiennych. Aby to zrobić bez konieczności ręcznego określania pełnej listy, wykorzystując fakt, że wszystkie zawierają słowo „Age”, tworzymy wektor logiczny age_variables który zawiera wartość TRUE dla tych zmiennych, które zawierają słowo „Age” wewnątrz (w przeciwnym razie FALSE) i upewnij się, że zachowujemy nowo utworzone  zmienne Age_18to44  i Age_45plus. Pozostałe poziomy etniczności i wykształcenia usuwamy ręcznie:

column_names <- colnames(data)

new_variables <- !logical(length(columns_names))

new_variables <- setNames(new_variables, colimn_names)

age_variables <- sapply(column_names, function(x) grepl(„Age”, x))

new_variables [age_variables= <- FALSe

new_variables [[„AdultMeanAge”]] <- TRUE

new_variables [[„Age_18to44”]] <- TRUE

new_variables [[„Age_45plus”]] <- TRUE

new_variables [[„Black”]] <- FALSE

new_variables [[„Asian”]] <- FALSE

new_variables [[„India”]] <- FALSE

new_variables [[„Pakistani”]] <- FALSE

new_variables [[„NoQuals”]] <- FALSE

new_variables [[„L4Quals_plus”]] <- FALSE

new_variables [[„OwnedOutright”]] <- FALSE

new_variables [[„MultiDeprived”]] <- FALSE

Zapisujemy utworzony obiekt data_adjusted, wybierając nowe kolumny, tworzymy nowe zmienne numeryczne dla nowej struktury danych i zapisujemy go jako plik CSV:

data_adjusted <- data[, new_variables]

numerical_variables_adjusted <- sapply(data_adjusted, is.numeric)

write.csv(data_adjusted, file = „data_brexit_referendum_adjusted.csv”)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *