INGRESOS
1 Tenemos que unir los dos ds:
dataset2006_original <- readRDS("CASEN_2006.rds")
# Como humanos, preferimos trabajar con etiquetas que con códigos.
dataset2006 <- as_factor(dataset2006_original, only_labelled = TRUE)
2 Extraemos el diccionario del propio dataset:
data_code <- stack(attr(dataset2006_original$COMUNA, 'labels'))
names(data_code)[2] <- "COMUNA"
head(data_code,10)
## values COMUNA
## 1 1101 Iquique
## 2 1102 Camiña
## 3 1103 Colchane
## 4 1104 Huara
## 5 1105 Pica
## 6 1106 Pozo Almonte
## 7 1107 Alto Hospicio
## 8 1201 Arica
## 9 1202 Camarones
## 10 1301 Putre
3 Invertimos el orden y asignamos los codigos correctos:
data_code <- data_code[,c(2,1)]
# data_code
data_code[270,2]<-11201
data_code[8,2]<-15101
data_code[178,2]<-16102
data_code[9,2]<-15102
data_code[2,2]<-1402
data_code[177,2]<-16101
data_code[182,2]<-16103
data_code[96,2]<-6303
data_code[179,2]<-16202
data_code[180,2]<-16203
data_code[181,2]<-16302
data_code[3,2]<-1403
data_code[287,2]<-13104
data_code[261,2]<-14102
data_code[183,2]<-16104
data_code[262,2]<-14202
data_code[11,2]<-15202
data_code[4,2]<-1404
data_code[292,2]<-13110
data_code[263,2]<-14201
data_code[264,2]<-14203
data_code[265,2]<-14103
data_code[66,2]<-5802
data_code[266,2]<-14104
data_code[267,2]<-14105
data_code[268,2]<-14106
data_code[89,2]<-6110
data_code[184,2]<-16204
data_code[185,2]<-16303
data_code[68,2]<-5803
data_code[271,2]<-14107
data_code[272,2]<-14108
data_code[186,2]<-16105
data_code[5,2]<-1405
data_code[187,2]<-16106
data_code[188,2]<-16205
data_code[6,2]<-1401
data_code[10,2]<-15201
data_code[246,2]<-16107
data_code[49,2]<-5801
data_code[92,2]<-6114
data_code[190,2]<-16201
data_code[191,2]<-16206
data_code[273,2]<-14204
data_code[192,2]<-16301
data_code[193,2]<-16304
data_code[194,2]<-16108
data_code[195,2]<-16305
data_code[286,2]<-13505
data_code[196,2]<-16207
data_code[260,2]<-14101
data_code[51,2]<-5804
data_code[197,2]<-16109
# data_code
4 Hacemos la unión entre la base de datos original y el diccionario:
dataset2006 = merge( x = dataset2006, y = data_code, by = "COMUNA", all.x = TRUE)
# pasamos los valores a las etiquetas:
dataset2006 <- as_factor(dataset2006, only_labelled = TRUE)
5 Generamos la tabla de frecuencias con los promedios de ingreso:
dataset2006 <- as_factor(dataset2006, only_labelled = TRUE)
promedios_grupales <-aggregate(dataset2006$YAUTHAJ, by=list(dataset2006$COMUNA, dataset2006$T4, dataset2006$SEXO), FUN = mean , na.rm = TRUE)
names(promedios_grupales)[1] <- "comuna"
promedios_grupales$anio <- "2006"
# head(promedios_grupales,5)
6 Hacemos un último merge para adjuntar el código comunal:
names(data_code)[1] <- "comuna"
dataset2006 = merge( x = promedios_grupales, y = data_code, by = "comuna", all.x = TRUE)
# dataset2006
head(dataset2006,20)
## comuna Group.2 Group.3
## 1 Aisén No pertenece a ningún pueblo indígena Mujer
## 2 Aisén Kawaskar Hombre
## 3 Aisén Mapuche Mujer
## 4 Aisén No pertenece a ningún pueblo indígena Hombre
## 5 Aisén Kawaskar Mujer
## 6 Aisén Mapuche Hombre
## 7 Algarrobo Mapuche Mujer
## 8 Algarrobo No pertenece a ningún pueblo indígena Mujer
## 9 Algarrobo Mapuche Hombre
## 10 Algarrobo Atacameño Hombre
## 11 Algarrobo No pertenece a ningún pueblo indígena Hombre
## 12 Alhué No pertenece a ningún pueblo indígena Mujer
## 13 Alhué Mapuche Hombre
## 14 Alhué No pertenece a ningún pueblo indígena Hombre
## 15 Alhué Mapuche Mujer
## 16 Alto Bío Bío No pertenece a ningún pueblo indígena Hombre
## 17 Alto Bío Bío Mapuche Hombre
## 18 Alto Bío Bío Mapuche Mujer
## 19 Alto Bío Bío No pertenece a ningún pueblo indígena Mujer
## 20 Alto del Carmen Diaguita Hombre
## mean.dataset2006$YAUTHAJ anio values
## 1 627172.9 2006 11201
## 2 323200.0 2006 11201
## 3 412725.5 2006 11201
## 4 681243.3 2006 11201
## 5 323200.0 2006 11201
## 6 504442.6 2006 11201
## 7 205818.8 2006 5602
## 8 510402.4 2006 5602
## 9 365769.3 2006 5602
## 10 388600.0 2006 5602
## 11 530809.9 2006 5602
## 12 376681.9 2006 13502
## 13 920051.5 2006 13502
## 14 391196.3 2006 13502
## 15 250270.7 2006 13502
## 16 295193.1 2006 16101
## 17 211050.1 2006 16101
## 18 222860.0 2006 16101
## 19 347135.5 2006 16101
## 20 477949.0 2006 3302
write_xlsx(dataset2006,"ingresos_auto_etnia_2006.xlsx")