A13-DPLYR

EJERCICIO 1: dataframe mtcars

A. Autos con mpg > 25 y wt < 2.5

ej1_a <- mtcars %>% filter(mpg > 25, wt < 2.5)

ej1_a

B. Ordenar por hp ascendente, mostrando solo mpg, hp y wt

ej1_b <- mtcars %>% arrange(hp) %>% select(mpg, hp, wt)

ej1_b

C. Nueva columna kpl (1 mpg = 0.4251 kpl)

ej1_c <- mtcars %>% mutate(kpl = mpg * 0.4251)

ej1_c

D. Media, mediana y desviación estándar de mpg (todos los autos)

ej1_d <- mtcars %>% summarise( media_mpg = mean(mpg), mediana_mpg = median(mpg), sd_mpg = sd(mpg) )

ej1_d

E. Media y desviación estándar de mpg agrupado por cyl

ej1_e <- mtcars %>% group_by(cyl) %>% summarise( media_mpg = mean(mpg), sd_mpg = sd(mpg) )

ej1_e

EJERCICIO 2: dataframe pwt (Penn World Table 10.01)

pwt <- pwt10::pwt10.01

Códigos ISO-3 de los países de América Latina

latam_codes <- c(“ARG”, “BOL”, “BRA”, “CHL”, “COL”, “CRI”, “CUB”, “DOM”, “ECU”, “SLV”, “GTM”, “HND”, “MEX”, “NIC”, “PAN”, “PRY”, “PER”, “URY”, “VEN”)

A. Filtrar solo países de América Latina

pwt_latam <- pwt %>% filter(isocode %in% latam_codes)

pwt_latam

B. Ingreso per cápita promedio (rgdpe/pop) e índice de capital

humano promedio (hc) de los países latinoamericanos en 2019

ej2_b <- pwt_latam %>% filter(year == 2019) %>% mutate(ingreso_percapita = rgdpe / pop) %>% summarise( ingreso_percapita_prom = mean(ingreso_percapita, na.rm = TRUE), hc_promedio = mean(hc, na.rm = TRUE) )

ej2_b

C. Clasificar cada país por su nivel de ingreso (Banco Mundial)

usando el ingreso per cápita (rgdpe/pop) del año 2019

ej2_c <- pwt_latam %>% filter(year == 2019) %>% mutate(ingreso_percapita = rgdpe / pop) %>% mutate( nivel_ingreso = case_when( ingreso_percapita < 1026 ~ “Bajo”, ingreso_percapita >= 1026 & ingreso_percapita <= 3995 ~ “Bajo-medio”, ingreso_percapita >= 3996 & ingreso_percapita <= 12375 ~ “Medio-alto”, ingreso_percapita > 12375 ~ “Alto” ) ) %>% select(isocode, country, ingreso_percapita, nivel_ingreso)

ej2_c

D. Crecimiento promedio del PIB real (rgdpe) por grupo de ingreso

entre 2015 y 2019, usando la clasificación del ítem anterior

Tabla de clasificación (país -> nivel de ingreso) obtenida en C

clasificacion <- ej2_c %>% select(isocode, nivel_ingreso)

ej2_d <- pwt_latam %>% filter(year %in% c(2015, 2019)) %>% select(isocode, country, year, rgdpe) %>% tidyr::pivot_wider(names_from = year, values_from = rgdpe, names_prefix = “rgdpe_”) %>% mutate(crecimiento_pib = (rgdpe_2019 - rgdpe_2015) / rgdpe_2015) %>% left_join(clasificacion, by = “isocode”) %>% group_by(nivel_ingreso) %>% summarise( crecimiento_promedio = mean(crecimiento_pib, na.rm = TRUE) )

ej2_d