En el anĆ”lisis de polĆticas pĆŗblicas y desarrollo internacional, se utilizan diversas bases de datos que abarcan desde información macroeconómica hasta datos especĆficos sobre programas y proyectos.
A partir de cómo se presenten los datos, las bases de datos pueden tener diferentes tipologĆas
En ciencia de datos y econometrĆa, se utilizan diversos tipos de bases de datos para analizar y modelar fenómenos económicos. Algunos de los tipos de bases de datos comunes en este campo incluyen:
Bases de Datos de Series Temporales: Contienen observaciones a lo largo del tiempo sobre variables económicas, como tasas de interés, inflación, PIB, tasas de empleo, entre otras. Estos conjuntos de datos son fundamentales para el anÔlisis de series temporales y la modelización de tendencias económicas.
Bases de Datos de Corte Transversal: Las bases de datos de corte transversal contienen observaciones recopiladas en un solo punto en el tiempo o a lo largo de un perĆodo especĆfico para diferentes entidades (como paĆses, empresas, individuos) sin seguirlas en el tiempo.Son esenciales para analizar relaciones y variaciones en un momento especĆfico, como la comparación de indicadores económicos entre diferentes paĆses en un aƱo determinado.
Bases de Datos Longitudinales: Recopilan información sobre un grupo especĆfico de individuos, empresas o regiones a lo largo del tiempo. Estas bases de datos permiten analizar el cambio en el tiempo y realizar estudios sobre trayectorias individuales o evolución de ciertos indicadores económicos.
Bases de Datos Transaccionales: Contienen información sobre transacciones económicas individuales. Estos datos son fundamentales para el anĆ”lisis de microeconomĆa y pueden incluir transacciones comerciales, datos financieros o registros de operaciones.
Bases de Datos Espaciales: Contienen información geogrÔfica relacionada con fenómenos económicos. Estos datos son esenciales para el anÔlisis espacial y la modelización de patrones económicos en diferentes regiones geogrÔficas.
Encuestas Económicas: Bases de datos derivadas de encuestas realizadas a individuos, empresas o hogares. Estas encuestas pueden incluir información sobre ingresos, gastos, preferencias de consumo y otros aspectos socioeconómicos.
Bases de Datos de Mercados Financieros: Contienen información sobre activos financieros, transacciones bursÔtiles, precios de acciones, tasas de interés y otros indicadores relacionados con los mercados financieros.
Bases de Datos Macroeconómicas: Recopilan datos agregados a nivel de paĆs o región sobre variables económicas clave, como el PIB, la inflación, el desempleo, la deuda pĆŗblica, entre otros.
Bases de Datos Experimentales: Contienen datos derivados de experimentos económicos, como ensayos clĆnicos, estudios de campo o investigaciones controladas que buscan analizar el comportamiento humano en contextos económicos especĆficos.
Revisemos en R algunas de estas tipologĆas de bases de datos
Instalemos algunas bases de datos para trabajar con ellas
install.packages("wooldridge")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.2'
## (as 'lib' is unspecified)
install.packages('gapminder')
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.2'
## (as 'lib' is unspecified)
install.packages("ggplot2")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.2'
## (as 'lib' is unspecified)
library(wooldridge)
library(gapminder)
library(ggplot2)
Navegemos primero las bases de datos que nos ofrece el paquete Wooldrige,. Comencemos con la base de datos āaffairsā
help(wooldridge)
## No documentation for 'wooldridge' in specified packages and libraries:
## you could try '??wooldridge'
??wooldridge
## No vignettes or demos or help files found with alias or concept or
## title matching 'wooldridge' using fuzzy matching.
data()
data("affairs")
head(affairs)
tail(affairs)
length(affairs)
## [1] 19
affairs[1:10,]
summary(affairs)
## id male age yrsmarr
## Min. : 4 Min. :0.0000 Min. :17.50 Min. : 0.125
## 1st Qu.: 528 1st Qu.:0.0000 1st Qu.:27.00 1st Qu.: 4.000
## Median :1009 Median :0.0000 Median :32.00 Median : 7.000
## Mean :1060 Mean :0.4759 Mean :32.49 Mean : 8.178
## 3rd Qu.:1453 3rd Qu.:1.0000 3rd Qu.:37.00 3rd Qu.:15.000
## Max. :9029 Max. :1.0000 Max. :57.00 Max. :15.000
## kids relig educ occup
## Min. :0.0000 Min. :1.000 Min. : 9.00 Min. :1.000
## 1st Qu.:0.0000 1st Qu.:2.000 1st Qu.:14.00 1st Qu.:3.000
## Median :1.0000 Median :3.000 Median :16.00 Median :5.000
## Mean :0.7155 Mean :3.116 Mean :16.17 Mean :4.195
## 3rd Qu.:1.0000 3rd Qu.:4.000 3rd Qu.:18.00 3rd Qu.:6.000
## Max. :1.0000 Max. :5.000 Max. :20.00 Max. :7.000
## ratemarr naffairs affair vryhap
## Min. :1.000 Min. : 0.000 Min. :0.0000 Min. :0.000
## 1st Qu.:3.000 1st Qu.: 0.000 1st Qu.:0.0000 1st Qu.:0.000
## Median :4.000 Median : 0.000 Median :0.0000 Median :0.000
## Mean :3.932 Mean : 1.456 Mean :0.2496 Mean :0.386
## 3rd Qu.:5.000 3rd Qu.: 0.000 3rd Qu.:0.0000 3rd Qu.:1.000
## Max. :5.000 Max. :12.000 Max. :1.0000 Max. :1.000
## hapavg avgmarr unhap vryrel
## Min. :0.0000 Min. :0.0000 Min. :0.0000 Min. :0.0000
## 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
## Median :0.0000 Median :0.0000 Median :0.0000 Median :0.0000
## Mean :0.3228 Mean :0.1547 Mean :0.1098 Mean :0.1165
## 3rd Qu.:1.0000 3rd Qu.:0.0000 3rd Qu.:0.0000 3rd Qu.:0.0000
## Max. :1.0000 Max. :1.0000 Max. :1.0000 Max. :1.0000
## smerel slghtrel notrel
## Min. :0.0000 Min. :0.0000 Min. :0.0000
## 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
## Median :0.0000 Median :0.0000 Median :0.0000
## Mean :0.3161 Mean :0.2146 Mean :0.2729
## 3rd Qu.:1.0000 3rd Qu.:0.0000 3rd Qu.:1.0000
## Max. :1.0000 Max. :1.0000 Max. :1.0000
summary(affairs$educ)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 9.00 14.00 16.00 16.17 18.00 20.00
attach(affairs)
summary(educ)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 9.00 14.00 16.00 16.17 18.00 20.00
detach(affairs)
# summary(educ)
¿CuÔles son los metadatos de este dataset? Los metadatos pueden encontrarlos en: https://cran.r-project.org/web/packages/wooldridge/wooldridge.pdf
Recordar que en r las variables character (nominal), factor (categoricas), integer (discretas), y numeric (numericas)
Veamos ahora la base de datos de corte transversal wage1
Carga la base de datos āwage1ā y explórala:
data("wage1")
head(wage1)
attach(wage1)
str(wage1)
## 'data.frame': 526 obs. of 24 variables:
## $ wage : num 3.1 3.24 3 6 5.3 ...
## $ educ : int 11 12 11 8 12 16 18 12 12 17 ...
## $ exper : int 2 22 2 44 7 9 15 5 26 22 ...
## $ tenure : int 0 2 0 28 2 8 7 3 4 21 ...
## $ nonwhite: int 0 0 0 0 0 0 0 0 0 0 ...
## $ female : int 1 1 0 0 0 0 0 1 1 0 ...
## $ married : int 0 1 0 1 1 1 0 0 0 1 ...
## $ numdep : int 2 3 2 0 1 0 0 0 2 0 ...
## $ smsa : int 1 1 0 1 0 1 1 1 1 1 ...
## $ northcen: int 0 0 0 0 0 0 0 0 0 0 ...
## $ south : int 0 0 0 0 0 0 0 0 0 0 ...
## $ west : int 1 1 1 1 1 1 1 1 1 1 ...
## $ construc: int 0 0 0 0 0 0 0 0 0 0 ...
## $ ndurman : int 0 0 0 0 0 0 0 0 0 0 ...
## $ trcommpu: int 0 0 0 0 0 0 0 0 0 0 ...
## $ trade : int 0 0 1 0 0 0 1 0 1 0 ...
## $ services: int 0 1 0 0 0 0 0 0 0 0 ...
## $ profserv: int 0 0 0 0 0 1 0 0 0 0 ...
## $ profocc : int 0 0 0 0 0 1 1 1 1 1 ...
## $ clerocc : int 0 0 0 1 0 0 0 0 0 0 ...
## $ servocc : int 0 1 0 0 0 0 0 0 0 0 ...
## $ lwage : num 1.13 1.18 1.1 1.79 1.67 ...
## $ expersq : int 4 484 4 1936 49 81 225 25 676 484 ...
## $ tenursq : int 0 4 0 784 4 64 49 9 16 441 ...
## - attr(*, "time.stamp")= chr "25 Jun 2011 23:03"
str(wage1)
## 'data.frame': 526 obs. of 24 variables:
## $ wage : num 3.1 3.24 3 6 5.3 ...
## $ educ : int 11 12 11 8 12 16 18 12 12 17 ...
## $ exper : int 2 22 2 44 7 9 15 5 26 22 ...
## $ tenure : int 0 2 0 28 2 8 7 3 4 21 ...
## $ nonwhite: int 0 0 0 0 0 0 0 0 0 0 ...
## $ female : int 1 1 0 0 0 0 0 1 1 0 ...
## $ married : int 0 1 0 1 1 1 0 0 0 1 ...
## $ numdep : int 2 3 2 0 1 0 0 0 2 0 ...
## $ smsa : int 1 1 0 1 0 1 1 1 1 1 ...
## $ northcen: int 0 0 0 0 0 0 0 0 0 0 ...
## $ south : int 0 0 0 0 0 0 0 0 0 0 ...
## $ west : int 1 1 1 1 1 1 1 1 1 1 ...
## $ construc: int 0 0 0 0 0 0 0 0 0 0 ...
## $ ndurman : int 0 0 0 0 0 0 0 0 0 0 ...
## $ trcommpu: int 0 0 0 0 0 0 0 0 0 0 ...
## $ trade : int 0 0 1 0 0 0 1 0 1 0 ...
## $ services: int 0 1 0 0 0 0 0 0 0 0 ...
## $ profserv: int 0 0 0 0 0 1 0 0 0 0 ...
## $ profocc : int 0 0 0 0 0 1 1 1 1 1 ...
## $ clerocc : int 0 0 0 1 0 0 0 0 0 0 ...
## $ servocc : int 0 1 0 0 0 0 0 0 0 0 ...
## $ lwage : num 1.13 1.18 1.1 1.79 1.67 ...
## $ expersq : int 4 484 4 1936 49 81 225 25 676 484 ...
## $ tenursq : int 0 4 0 784 4 64 49 9 16 441 ...
## - attr(*, "time.stamp")= chr "25 Jun 2011 23:03"
# Según visto en la clase, ¿qué tipo de base de dato es?
Puedes utilizar la función summary para obtener estadĆsticas descriptivas bĆ”sicas: ## EstadĆsticas descriptivas
summary(wage1)
## wage educ exper tenure
## Min. : 0.530 Min. : 0.00 Min. : 1.00 Min. : 0.000
## 1st Qu.: 3.330 1st Qu.:12.00 1st Qu.: 5.00 1st Qu.: 0.000
## Median : 4.650 Median :12.00 Median :13.50 Median : 2.000
## Mean : 5.896 Mean :12.56 Mean :17.02 Mean : 5.105
## 3rd Qu.: 6.880 3rd Qu.:14.00 3rd Qu.:26.00 3rd Qu.: 7.000
## Max. :24.980 Max. :18.00 Max. :51.00 Max. :44.000
## nonwhite female married numdep
## Min. :0.0000 Min. :0.0000 Min. :0.0000 Min. :0.000
## 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.000
## Median :0.0000 Median :0.0000 Median :1.0000 Median :1.000
## Mean :0.1027 Mean :0.4791 Mean :0.6084 Mean :1.044
## 3rd Qu.:0.0000 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:2.000
## Max. :1.0000 Max. :1.0000 Max. :1.0000 Max. :6.000
## smsa northcen south west
## Min. :0.0000 Min. :0.000 Min. :0.0000 Min. :0.0000
## 1st Qu.:0.0000 1st Qu.:0.000 1st Qu.:0.0000 1st Qu.:0.0000
## Median :1.0000 Median :0.000 Median :0.0000 Median :0.0000
## Mean :0.7224 Mean :0.251 Mean :0.3555 Mean :0.1692
## 3rd Qu.:1.0000 3rd Qu.:0.750 3rd Qu.:1.0000 3rd Qu.:0.0000
## Max. :1.0000 Max. :1.000 Max. :1.0000 Max. :1.0000
## construc ndurman trcommpu trade
## Min. :0.00000 Min. :0.0000 Min. :0.00000 Min. :0.0000
## 1st Qu.:0.00000 1st Qu.:0.0000 1st Qu.:0.00000 1st Qu.:0.0000
## Median :0.00000 Median :0.0000 Median :0.00000 Median :0.0000
## Mean :0.04563 Mean :0.1141 Mean :0.04373 Mean :0.2871
## 3rd Qu.:0.00000 3rd Qu.:0.0000 3rd Qu.:0.00000 3rd Qu.:1.0000
## Max. :1.00000 Max. :1.0000 Max. :1.00000 Max. :1.0000
## services profserv profocc clerocc
## Min. :0.0000 Min. :0.0000 Min. :0.0000 Min. :0.0000
## 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
## Median :0.0000 Median :0.0000 Median :0.0000 Median :0.0000
## Mean :0.1008 Mean :0.2586 Mean :0.3669 Mean :0.1673
## 3rd Qu.:0.0000 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:0.0000
## Max. :1.0000 Max. :1.0000 Max. :1.0000 Max. :1.0000
## servocc lwage expersq tenursq
## Min. :0.0000 Min. :-0.6349 Min. : 1.0 Min. : 0.00
## 1st Qu.:0.0000 1st Qu.: 1.2030 1st Qu.: 25.0 1st Qu.: 0.00
## Median :0.0000 Median : 1.5369 Median : 182.5 Median : 4.00
## Mean :0.1407 Mean : 1.6233 Mean : 473.4 Mean : 78.15
## 3rd Qu.:0.0000 3rd Qu.: 1.9286 3rd Qu.: 676.0 3rd Qu.: 49.00
## Max. :1.0000 Max. : 3.2181 Max. :2601.0 Max. :1936.00
Esto te proporcionarĆ” un resumen estadĆstico de todas las variables en la base de datos āwage1ā. AdemĆ”s, puedes utilizar funciones especĆficas como mean, sd, quantile, etc., para obtener estadĆsticas mĆ”s detalladas.
mean(wage1$wage)
## [1] 5.896103
sd(wage1$wage)
## [1] 3.693086
quantile(wage1$wage)
## 0% 25% 50% 75% 100%
## 0.53 3.33 4.65 6.88 24.98
Realicemos ahora algunas graficas con el paquete ggplot2
ggplot(wage1, aes(x = wage)) +
geom_histogram(binwidth = 2, fill = "blue", color = "black") +
labs(title = "Histograma de Salarios", x = "Salario", y = "Frecuencia") +
theme_minimal()
# Diagrama de dispersión educación vs. salario
ggplot(wage1, aes(x = educ, y = wage)) +
geom_point(color = "green") +
labs(title = "Diagrama de Dispersión entre Educación y Salario", x = "Educación", y = "Salario") +
theme_minimal()
##GrĆ”fico de Barras para CategorĆas (female):
ggplot(wage1, aes(x = factor(female), fill = factor(female))) +
geom_bar() +
labs(title = "GrƔfico de Barras para GƩnero", x = "GƩnero", y = "Frecuencia") +
scale_fill_manual(values = c("blue", "pink")) +
theme_minimal()
Este código utiliza geom_boxplot para crear un diagrama de caja que compara los salarios entre hombres (0) y mujeres (1). Los colores de llenado se ajustan para representar a hombres en azul y mujeres en rosado.
ggplot(wage1, aes(x = factor(female), y = wage, fill = factor(female))) +
geom_boxplot() +
labs(title = "Diagrama de Caja de Salarios por GƩnero", x = "GƩnero", y = "Salario") +
scale_fill_manual(values = c("blue", "pink")) +
theme_minimal()
Corramos una regresion lineal simple entre el logaritmo del salario como variable resultado y la variable predictor de educación
log_wage_model <- lm(lwage ~ educ, data = wage1)
summary(log_wage_model)
##
## Call:
## lm(formula = lwage ~ educ, data = wage1)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.21158 -0.36393 -0.07263 0.29712 1.52339
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.583773 0.097336 5.998 3.74e-09 ***
## educ 0.082744 0.007567 10.935 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.4801 on 524 degrees of freedom
## Multiple R-squared: 0.1858, Adjusted R-squared: 0.1843
## F-statistic: 119.6 on 1 and 524 DF, p-value: < 2.2e-16
plot(log_wage_model)
data("prminwge")
# GrĆ”fico de lĆneas para la variable salarios
ggplot(prminwge, aes(x = year, y = avgmin)) +
geom_line(color = "blue") +
labs(title = "GrƔfico crecimiento salarios",
x = "AƱos",
y = "Salario minimo") +
theme_minimal()
# GrĆ”fico de lĆneas para la variable desempleo
ggplot(prminwge, aes(x = year, y = prunemp)) +
geom_line(color = "red") +
labs(title = "GrƔfico desempleo",
x = "AƱos",
y = "Desempleo") +
theme_minimal()
Utilicemos en este caso la tasa DTF efectiva anual y las tasas de interes ofrecidas por los CDT a 180 dias
datos <- read.csv("DTF.csv")
# Según lo visto en la clase, ¿qué tipo de base de datos es DTF.csv?
AsegĆŗrate de que la variable āVigencia_desdeā sea de tipo Date
datos$Vigencia <- as.Date(datos$Vigencia, format = "%d/%m/%Y")
##Crear el grƔfico usando ggplot2
ggplot(datos, aes(x = Vigencia, y = DTF)) +
geom_line() +
labs(title = "Variación de DTF a lo largo del tiempo",
x = "Vigencia desde (dd/mm/aaaa)",
y = "DTF %") +
theme_minimal()
##Crear el grƔfico con dos variables: DTF y CDT 180%
ggplot(datos, aes(x = Vigencia)) +
geom_line(aes(y = DTF, color = "DTF"), size = 1) +
geom_line(aes(y = CDT_180, color = "CDT 180%"), linetype = "dashed", size = 0.5) +
labs(title = "Variación de DTF y CDT 180% a lo largo del tiempo",
x = "Vigencia desde (dd/mm/aaaa)",
y = "Porcentaje") +
scale_color_manual(values = c("DTF" = "blue", "CDT 180%" = "red")) +
theme_minimal()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ā¹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Ahora veamos una base de datos pool cross sections
data("hprice3")
attach(hprice3)
table(year)
## year
## 1978 1981
## 179 142
# install.packages("gapminder")
library(gapminder)
##Mostrar las variables en el conjunto de datos
variables_gapminder <- names(gapminder)
print(variables_gapminder)
## [1] "country" "continent" "year" "lifeExp" "pop" "gdpPercap"
##Mostrar los primeros 100 datos del conjunto de datos gapminder
primeros_100_datos <- head(gapminder, 100)
print(primeros_100_datos)
## # A tibble: 100 Ć 6
## country continent year lifeExp pop gdpPercap
## <fct> <fct> <int> <dbl> <int> <dbl>
## 1 Afghanistan Asia 1952 28.8 8425333 779.
## 2 Afghanistan Asia 1957 30.3 9240934 821.
## 3 Afghanistan Asia 1962 32.0 10267083 853.
## 4 Afghanistan Asia 1967 34.0 11537966 836.
## 5 Afghanistan Asia 1972 36.1 13079460 740.
## 6 Afghanistan Asia 1977 38.4 14880372 786.
## 7 Afghanistan Asia 1982 39.9 12881816 978.
## 8 Afghanistan Asia 1987 40.8 13867957 852.
## 9 Afghanistan Asia 1992 41.7 16317921 649.
## 10 Afghanistan Asia 1997 41.8 22227415 635.
## # ā¹ 90 more rows
##Mostrar mƔs filas del conjunto de datos gapminder
print(gapminder, n = 100)
## # A tibble: 1,704 Ć 6
## country continent year lifeExp pop gdpPercap
## <fct> <fct> <int> <dbl> <int> <dbl>
## 1 Afghanistan Asia 1952 28.8 8425333 779.
## 2 Afghanistan Asia 1957 30.3 9240934 821.
## 3 Afghanistan Asia 1962 32.0 10267083 853.
## 4 Afghanistan Asia 1967 34.0 11537966 836.
## 5 Afghanistan Asia 1972 36.1 13079460 740.
## 6 Afghanistan Asia 1977 38.4 14880372 786.
## 7 Afghanistan Asia 1982 39.9 12881816 978.
## 8 Afghanistan Asia 1987 40.8 13867957 852.
## 9 Afghanistan Asia 1992 41.7 16317921 649.
## 10 Afghanistan Asia 1997 41.8 22227415 635.
## 11 Afghanistan Asia 2002 42.1 25268405 727.
## 12 Afghanistan Asia 2007 43.8 31889923 975.
## 13 Albania Europe 1952 55.2 1282697 1601.
## 14 Albania Europe 1957 59.3 1476505 1942.
## 15 Albania Europe 1962 64.8 1728137 2313.
## 16 Albania Europe 1967 66.2 1984060 2760.
## 17 Albania Europe 1972 67.7 2263554 3313.
## 18 Albania Europe 1977 68.9 2509048 3533.
## 19 Albania Europe 1982 70.4 2780097 3631.
## 20 Albania Europe 1987 72 3075321 3739.
## 21 Albania Europe 1992 71.6 3326498 2497.
## 22 Albania Europe 1997 73.0 3428038 3193.
## 23 Albania Europe 2002 75.7 3508512 4604.
## 24 Albania Europe 2007 76.4 3600523 5937.
## 25 Algeria Africa 1952 43.1 9279525 2449.
## 26 Algeria Africa 1957 45.7 10270856 3014.
## 27 Algeria Africa 1962 48.3 11000948 2551.
## 28 Algeria Africa 1967 51.4 12760499 3247.
## 29 Algeria Africa 1972 54.5 14760787 4183.
## 30 Algeria Africa 1977 58.0 17152804 4910.
## 31 Algeria Africa 1982 61.4 20033753 5745.
## 32 Algeria Africa 1987 65.8 23254956 5681.
## 33 Algeria Africa 1992 67.7 26298373 5023.
## 34 Algeria Africa 1997 69.2 29072015 4797.
## 35 Algeria Africa 2002 71.0 31287142 5288.
## 36 Algeria Africa 2007 72.3 33333216 6223.
## 37 Angola Africa 1952 30.0 4232095 3521.
## 38 Angola Africa 1957 32.0 4561361 3828.
## 39 Angola Africa 1962 34 4826015 4269.
## 40 Angola Africa 1967 36.0 5247469 5523.
## 41 Angola Africa 1972 37.9 5894858 5473.
## 42 Angola Africa 1977 39.5 6162675 3009.
## 43 Angola Africa 1982 39.9 7016384 2757.
## 44 Angola Africa 1987 39.9 7874230 2430.
## 45 Angola Africa 1992 40.6 8735988 2628.
## 46 Angola Africa 1997 41.0 9875024 2277.
## 47 Angola Africa 2002 41.0 10866106 2773.
## 48 Angola Africa 2007 42.7 12420476 4797.
## 49 Argentina Americas 1952 62.5 17876956 5911.
## 50 Argentina Americas 1957 64.4 19610538 6857.
## 51 Argentina Americas 1962 65.1 21283783 7133.
## 52 Argentina Americas 1967 65.6 22934225 8053.
## 53 Argentina Americas 1972 67.1 24779799 9443.
## 54 Argentina Americas 1977 68.5 26983828 10079.
## 55 Argentina Americas 1982 69.9 29341374 8998.
## 56 Argentina Americas 1987 70.8 31620918 9140.
## 57 Argentina Americas 1992 71.9 33958947 9308.
## 58 Argentina Americas 1997 73.3 36203463 10967.
## 59 Argentina Americas 2002 74.3 38331121 8798.
## 60 Argentina Americas 2007 75.3 40301927 12779.
## 61 Australia Oceania 1952 69.1 8691212 10040.
## 62 Australia Oceania 1957 70.3 9712569 10950.
## 63 Australia Oceania 1962 70.9 10794968 12217.
## 64 Australia Oceania 1967 71.1 11872264 14526.
## 65 Australia Oceania 1972 71.9 13177000 16789.
## 66 Australia Oceania 1977 73.5 14074100 18334.
## 67 Australia Oceania 1982 74.7 15184200 19477.
## 68 Australia Oceania 1987 76.3 16257249 21889.
## 69 Australia Oceania 1992 77.6 17481977 23425.
## 70 Australia Oceania 1997 78.8 18565243 26998.
## 71 Australia Oceania 2002 80.4 19546792 30688.
## 72 Australia Oceania 2007 81.2 20434176 34435.
## 73 Austria Europe 1952 66.8 6927772 6137.
## 74 Austria Europe 1957 67.5 6965860 8843.
## 75 Austria Europe 1962 69.5 7129864 10751.
## 76 Austria Europe 1967 70.1 7376998 12835.
## 77 Austria Europe 1972 70.6 7544201 16662.
## 78 Austria Europe 1977 72.2 7568430 19749.
## 79 Austria Europe 1982 73.2 7574613 21597.
## 80 Austria Europe 1987 74.9 7578903 23688.
## 81 Austria Europe 1992 76.0 7914969 27042.
## 82 Austria Europe 1997 77.5 8069876 29096.
## 83 Austria Europe 2002 79.0 8148312 32418.
## 84 Austria Europe 2007 79.8 8199783 36126.
## 85 Bahrain Asia 1952 50.9 120447 9867.
## 86 Bahrain Asia 1957 53.8 138655 11636.
## 87 Bahrain Asia 1962 56.9 171863 12753.
## 88 Bahrain Asia 1967 59.9 202182 14805.
## 89 Bahrain Asia 1972 63.3 230800 18269.
## 90 Bahrain Asia 1977 65.6 297410 19340.
## 91 Bahrain Asia 1982 69.1 377967 19211.
## 92 Bahrain Asia 1987 70.8 454612 18524.
## 93 Bahrain Asia 1992 72.6 529491 19036.
## 94 Bahrain Asia 1997 73.9 598561 20292.
## 95 Bahrain Asia 2002 74.8 656397 23404.
## 96 Bahrain Asia 2007 75.6 708573 29796.
## 97 Bangladesh Asia 1952 37.5 46886859 684.
## 98 Bangladesh Asia 1957 39.3 51365468 662.
## 99 Bangladesh Asia 1962 41.2 56839289 686.
## 100 Bangladesh Asia 1967 43.5 62821884 721.
## # ā¹ 1,604 more rows
Crear el grÔfico de dispersión cruzando Población con PIB per cÔpita. No es una buena grafica porque es una serie de tiempo.
ggplot(gapminder, aes(x = pop, y = gdpPercap)) +
geom_point(size = 3, color = "blue") +
labs(title = "GrÔfico de dispersión de Población y PIB per cÔpita",
x = "Población",
y = "PIB per cƔpita") +
theme_minimal()
Debemos entonces pensar en solo un año para entender mejor la serie. Analicemos que paso en el año 97 con relación al PIB percapita y la esperanza de vida
# Filtrar datos para el aƱo 1997
datos_1997 <- gapminder[gapminder$year == 1997, ]
# Crear el grÔfico de dispersión cruzando PIB per cÔpita con Esperanza de Vida
ggplot(datos_1997, aes(x = gdpPercap, y = lifeExp)) +
geom_point(size = 3, color = "green") +
labs(title = "GrÔfico de dispersión de PIB per cÔpita y Esperanza de Vida (1997)",
x = "PIB per cƔpita",
y = "Esperanza de Vida") +
theme_minimal()
Veamos ahora la serie desde 1952 a 2007 con respecto a esta relacion, esperanza de vida y PIB per capita
# Filtrar datos para el aƱo 1952 y 2007
datos_1952 <- gapminder[gapminder$year == 1952, ]
datos_2007 <- gapminder[gapminder$year == 2007, ]
# Crear el grÔfico de dispersión comparando PIB per cÔpita y Esperanza de Vida
ggplot() +
geom_point(data = datos_1952, aes(x = gdpPercap, y = lifeExp, color = "1952"), size = 3) +
geom_point(data = datos_2007, aes(x = gdpPercap, y = lifeExp, color = "2007"), size = 3) +
labs(title = "Comparación de PIB per cÔpita y Esperanza de Vida (1952 vs. 2007)",
x = "PIB per cƔpita",
y = "Esperanza de Vida") +
scale_color_manual(values = c("1952" = "blue", "2007" = "red")) +
theme_minimal()
¿Y qué pasa en Colombia?
# Filtrar datos para Colombia desde 1952 a 2007
datos_colombia <- gapminder[gapminder$country == "Colombia" & gapminder$year >= 1952 & gapminder$year <= 2007, ]
# Crear el grƔfico de serie de tiempo para PIB per cƔpita de Colombia
ggplot(datos_colombia, aes(x = year, y = gdpPercap)) +
geom_line(color = "blue", size = 1.5) +
labs(title = "Serie de Tiempo: PIB per cƔpita en Colombia (1952-2007)",
x = "AƱo",
y = "PIB per cƔpita") +
theme_minimal()
Por Ćŗltimo, veamos el caso de Colombia, Venezuela y dos paĆses similares en la decada de los 50 (Corea del Sur e Irlanda)
# Filtrar datos para Colombia, Venezuela, Corea del Sur e Irlanda desde 1957 a 2007
datos_paises <- gapminder[gapminder$country %in% c("Colombia", "Venezuela", "Korea, Rep.", "Ireland") & gapminder$year >= 1957 & gapminder$year <= 2007, ]
# Crear el grĆ”fico de serie de tiempo para PIB per cĆ”pita de los paĆses seleccionados
ggplot(datos_paises, aes(x = year, y = gdpPercap, color = country)) +
geom_line(size = 1.5) +
labs(title = "Serie de Tiempo: PIB per cƔpita (1957-2007)",
x = "AƱo",
y = "PIB per cƔpita") +
theme_minimal()
Esta es una combinación independiente de cortes transversales en el tiempo datos de 1978 y 1985. Son independientes cada muestra.
library(wooldridge)
data("cps78_85")
head(cps78_85)
tail(cps78_85)
Carguemos la base de datos de canasta
datos <- read.csv("experimentos_aleatorios_base copy.csv")
attach(datos)
hist(ha_nchs)