Hay algunos informáticos en el foro y algunas mentes curiosas. Que tal si en este tema usamos las bases de datos publicas para entender mejor la realidad socioeconomica del país y zanjar discusiones en base a evidencia?
EDIT: Se realizaron importantes modificaciones al post original.
En este primer post, partamos con algo simple, calculemos algunos estadísticos descriptivos de una base de datos de ingresos.
1)R es un paquete estadístico de código abierto, si no lo tienes, descargarlo e instalalo desde:
https://cloud.r-project.org/
2)Como ejemplo usemos la base de datos de la encuesta casen 2015
Descargamos el siguiente archivo y lo descomprimimos:
http://observatorio.ministeriodesar...tidimensional/casen/docs/casen_2015_stata.rar
3)Leer la base de datos
Ejecuamos R (el programa que instalaron en el primer paso), la interfaz grafica es una simple consola donde se ingresan comandos.
Para leer los datos importamos la librería "foreign":
Luego obtenemos el path de la base de datos casen, el siguiente comando abre el selector de archivos:
Elegimos el archivo Casen 2015.dta que descomprimimos anteriormente y como resultado aparecerá el path completo del archivo en la consola de R.
Luego reemplazamos el "path" completo en el siguiente comando:
Si funciona, los datos de la casen están en la variable cas15 listos para ser consultados
4)Estudiar la estructura de la base de datos
El siguiente comando lista las columnas de la casen, son 776 columnas:
La descripción de las columnas esta en el documento:
http://observatorio.ministeriodesar...al/casen/docs/Libro_de_Codigos_Casen_2015.pdf
5)Calculemos el ingreso de la actividad principal
La columna "yoprcor" representa el ingreso de la actividad principal. Sin embargo, para calcular totales regionales o a nivel de país debemos ponderarlo por el factor de expansión "expr". El factor de expansión indica a cuanta población representa cada observación de la encuesta, este factor hace la encuesta realmente representativa.
La media nacional, sin ponderar por factor de expansión, es 432071.2:
La media nacional ponderada por factor de expansión es 461916.1:
La diferencia es considerable. Por lo tanto, de aquí en adelante siempre usaremos el factor de expansión.
Ahora calculemos los deciles de ingreso:
Para esto debemos instalar la libreria "Hmisc" con el siguiente comando:
Las librerias se instalan una sola vez y quedan guardadas en el computador, pero cada vez que queramos usarlas debemos importarlas:
Ahora podemos usar la funcion wtd.quantile() para calcular los deciles de ingresos:
El resultado es:
el p50 es la mediana: $300.000
como andamos con los cálculos de la fundación hoyo negro?
http://www.fundacionsol.cl/wp-content/uploads/2017/04/Salarios-al-Límite.pdf
Llegamos exactamente al mismo resultado en la mediana y el p70
En la media hay una pequeña diferencia $461.916 vs $461.951.
Script completo (reemplazar el path al archivo de la base de datos):
EDIT: Se realizaron importantes modificaciones al post original.
En este primer post, partamos con algo simple, calculemos algunos estadísticos descriptivos de una base de datos de ingresos.
1)R es un paquete estadístico de código abierto, si no lo tienes, descargarlo e instalalo desde:
https://cloud.r-project.org/
2)Como ejemplo usemos la base de datos de la encuesta casen 2015
Descargamos el siguiente archivo y lo descomprimimos:
http://observatorio.ministeriodesar...tidimensional/casen/docs/casen_2015_stata.rar
3)Leer la base de datos
Ejecuamos R (el programa que instalaron en el primer paso), la interfaz grafica es una simple consola donde se ingresan comandos.
Para leer los datos importamos la librería "foreign":
Código:
library(foreign)
Código:
file.choose()
Luego reemplazamos el "path" completo en el siguiente comando:
Código:
cas15 <- read.dta("path")
4)Estudiar la estructura de la base de datos
El siguiente comando lista las columnas de la casen, son 776 columnas:
Código:
str(cas15, list.len=ncol(cas15))
http://observatorio.ministeriodesar...al/casen/docs/Libro_de_Codigos_Casen_2015.pdf
5)Calculemos el ingreso de la actividad principal
La columna "yoprcor" representa el ingreso de la actividad principal. Sin embargo, para calcular totales regionales o a nivel de país debemos ponderarlo por el factor de expansión "expr". El factor de expansión indica a cuanta población representa cada observación de la encuesta, este factor hace la encuesta realmente representativa.
La media nacional, sin ponderar por factor de expansión, es 432071.2:
Código:
mean(cas15$yoprcor, na.rm=TRUE)
La media nacional ponderada por factor de expansión es 461916.1:
Código:
weighted.mean(cas15$yoprcor, cas15$expr, na.rm=True)
La diferencia es considerable. Por lo tanto, de aquí en adelante siempre usaremos el factor de expansión.
Ahora calculemos los deciles de ingreso:
Para esto debemos instalar la libreria "Hmisc" con el siguiente comando:
Código:
install.packages("Hmisc")
Las librerias se instalan una sola vez y quedan guardadas en el computador, pero cada vez que queramos usarlas debemos importarlas:
Código:
library("Hmisc")
Ahora podemos usar la funcion wtd.quantile() para calcular los deciles de ingresos:
Código:
wtd.quantile(cas15$yoprcor, p = seq(0, 1, length = 11), na.rm = FALSE, weight=cas15$expr)
El resultado es:
Código:
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
500 125000 200000 241000 257194 300000 350000 450000 600000 879778 30000000
el p50 es la mediana: $300.000
como andamos con los cálculos de la fundación hoyo negro?
http://www.fundacionsol.cl/wp-content/uploads/2017/04/Salarios-al-Límite.pdf
Llegamos exactamente al mismo resultado en la mediana y el p70
En la media hay una pequeña diferencia $461.916 vs $461.951.
Script completo (reemplazar el path al archivo de la base de datos):
Código:
# Reemplazar el path a la base de datos Casen 2015.dta descomprimida (ojo, los backslash son dobles)
casen_path <- "C:\\Users\\thelonious\\Downloads\\casen_2015_stata\\Casen 2015.dta"
# Carga la libreria foreign (para importar los datos)
library(foreign)
# Instala libreria Hmisc si no esta instalada y la carga (para usar la funcion wtd.quantile())
if(!is.element("Hmisc", installed.packages()[,1]))
install.packages("Hmisc")
library("Hmisc")
#Carga la base de datos en memoria
cas15 <- read.dta(casen_path)
# Lista las columnas de la base de datos
str(cas15, list.len=ncol(cas15))
# Calcula la media de ingresos de la actividad principal NO ponderada por factor de expansion
mean(cas15$yoprcor, na.rm=TRUE)
# Calcula la media de ingresos de la actividad principal ponderada por factor de expansion
weighted.mean(cas15$yoprcor, cas15$expr, na.rm=TRUE)
# Calcula los deciles de ingresos ponderados por factor de expansion
wtd.quantile(cas15$yoprcor, p = seq(0, 1, length = 11), na.rm = TRUE, weight=cas15$expr)
Última edición: