A13-Ejercicio Basico de dlyr
Ejercicio 1: dataframe mtcars
## modelo mpg cyl disp hp drat wt qsec vs am gear carb
## 1 Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## 2 Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## 3 Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## 4 Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## 5 Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## 6 Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
Literal A
## modelo mpg wt
## 1 Fiat 128 32.4 2.200
## 2 Honda Civic 30.4 1.615
## 3 Toyota Corolla 33.9 1.835
## 4 Fiat X1-9 27.3 1.935
## 5 Porsche 914-2 26.0 2.140
## 6 Lotus Europa 30.4 1.513
Literal B
## modelo mpg hp wt
## 1 Honda Civic 30.4 52 1.615
## 2 Merc 240D 24.4 62 3.190
## 3 Toyota Corolla 33.9 65 1.835
## 4 Fiat 128 32.4 66 2.200
## 5 Fiat X1-9 27.3 66 1.935
## 6 Porsche 914-2 26.0 91 2.140
## 7 Datsun 710 22.8 93 2.320
## 8 Merc 230 22.8 95 3.150
## 9 Toyota Corona 21.5 97 2.465
## 10 Valiant 18.1 105 3.460
## 11 Volvo 142E 21.4 109 2.780
## 12 Mazda RX4 21.0 110 2.620
## 13 Mazda RX4 Wag 21.0 110 2.875
## 14 Hornet 4 Drive 21.4 110 3.215
## 15 Lotus Europa 30.4 113 1.513
## 16 Merc 280 19.2 123 3.440
## 17 Merc 280C 17.8 123 3.440
## 18 Dodge Challenger 15.5 150 3.520
## 19 AMC Javelin 15.2 150 3.435
## 20 Hornet Sportabout 18.7 175 3.440
## 21 Pontiac Firebird 19.2 175 3.845
## 22 Ferrari Dino 19.7 175 2.770
## 23 Merc 450SE 16.4 180 4.070
## 24 Merc 450SL 17.3 180 3.730
## 25 Merc 450SLC 15.2 180 3.780
## 26 Cadillac Fleetwood 10.4 205 5.250
## 27 Lincoln Continental 10.4 215 5.424
## 28 Chrysler Imperial 14.7 230 5.345
## 29 Duster 360 14.3 245 3.570
## 30 Camaro Z28 13.3 245 3.840
## 31 Ford Pantera L 15.8 264 3.170
## 32 Maserati Bora 15.0 335 3.570
Literal C
autos_transformados<-mtcars %>%
mutate( kpl = mpg * 0.4251) %>% # 1 mpg equivale a 0.4251 kpl
select(modelo, mpg, kpl)
print(autos_transformados)## modelo mpg kpl
## 1 Mazda RX4 21.0 8.92710
## 2 Mazda RX4 Wag 21.0 8.92710
## 3 Datsun 710 22.8 9.69228
## 4 Hornet 4 Drive 21.4 9.09714
## 5 Hornet Sportabout 18.7 7.94937
## 6 Valiant 18.1 7.69431
## 7 Duster 360 14.3 6.07893
## 8 Merc 240D 24.4 10.37244
## 9 Merc 230 22.8 9.69228
## 10 Merc 280 19.2 8.16192
## 11 Merc 280C 17.8 7.56678
## 12 Merc 450SE 16.4 6.97164
## 13 Merc 450SL 17.3 7.35423
## 14 Merc 450SLC 15.2 6.46152
## 15 Cadillac Fleetwood 10.4 4.42104
## 16 Lincoln Continental 10.4 4.42104
## 17 Chrysler Imperial 14.7 6.24897
## 18 Fiat 128 32.4 13.77324
## 19 Honda Civic 30.4 12.92304
## 20 Toyota Corolla 33.9 14.41089
## 21 Toyota Corona 21.5 9.13965
## 22 Dodge Challenger 15.5 6.58905
## 23 AMC Javelin 15.2 6.46152
## 24 Camaro Z28 13.3 5.65383
## 25 Pontiac Firebird 19.2 8.16192
## 26 Fiat X1-9 27.3 11.60523
## 27 Porsche 914-2 26.0 11.05260
## 28 Lotus Europa 30.4 12.92304
## 29 Ford Pantera L 15.8 6.71658
## 30 Ferrari Dino 19.7 8.37447
## 31 Maserati Bora 15.0 6.37650
## 32 Volvo 142E 21.4 9.09714
Ejercicio 2: dataframe pwt10
Comando
## country isocode year currency rgdpe rgdpo pop emp avh hc ccon
## ABW-1950 Aruba ABW 1950 Aruban Guilder NA NA NA NA NA NA NA
## ABW-1951 Aruba ABW 1951 Aruban Guilder NA NA NA NA NA NA NA
## ABW-1952 Aruba ABW 1952 Aruban Guilder NA NA NA NA NA NA NA
## ABW-1953 Aruba ABW 1953 Aruban Guilder NA NA NA NA NA NA NA
## ABW-1954 Aruba ABW 1954 Aruban Guilder NA NA NA NA NA NA NA
## ABW-1955 Aruba ABW 1955 Aruban Guilder NA NA NA NA NA NA NA
## cda cgdpe cgdpo cn ck ctfp cwtfp rgdpna rconna rdana rnna rkna rtfpna
## ABW-1950 NA NA NA NA NA NA NA NA NA NA NA NA NA
## ABW-1951 NA NA NA NA NA NA NA NA NA NA NA NA NA
## ABW-1952 NA NA NA NA NA NA NA NA NA NA NA NA NA
## ABW-1953 NA NA NA NA NA NA NA NA NA NA NA NA NA
## ABW-1954 NA NA NA NA NA NA NA NA NA NA NA NA NA
## ABW-1955 NA NA NA NA NA NA NA NA NA NA NA NA NA
## rwtfpna labsh irr delta xr pl_con pl_da pl_gdpo i_cig i_xm i_xr
## ABW-1950 NA NA NA NA NA NA NA NA <NA> <NA> <NA>
## ABW-1951 NA NA NA NA NA NA NA NA <NA> <NA> <NA>
## ABW-1952 NA NA NA NA NA NA NA NA <NA> <NA> <NA>
## ABW-1953 NA NA NA NA NA NA NA NA <NA> <NA> <NA>
## ABW-1954 NA NA NA NA NA NA NA NA <NA> <NA> <NA>
## ABW-1955 NA NA NA NA NA NA NA NA <NA> <NA> <NA>
## i_outlier i_irr cor_exp statcap csh_c csh_i csh_g csh_x csh_m csh_r
## ABW-1950 <NA> <NA> NA NA NA NA NA NA NA NA
## ABW-1951 <NA> <NA> NA NA NA NA NA NA NA NA
## ABW-1952 <NA> <NA> NA NA NA NA NA NA NA NA
## ABW-1953 <NA> <NA> NA NA NA NA NA NA NA NA
## ABW-1954 <NA> <NA> NA NA NA NA NA NA NA NA
## ABW-1955 <NA> <NA> NA NA NA NA NA NA NA NA
## pl_c pl_i pl_g pl_x pl_m pl_n pl_k
## ABW-1950 NA NA NA NA NA NA NA
## ABW-1951 NA NA NA NA NA NA NA
## ABW-1952 NA NA NA NA NA NA NA
## ABW-1953 NA NA NA NA NA NA NA
## ABW-1954 NA NA NA NA NA NA NA
## ABW-1955 NA NA NA NA NA NA NA
Literal A
paises_latam <- c("ARG", "BOL", "BRA", "CHL", "COL", "CRI", "CUB","DOM", "ECU", "SLV", "GTM", "HND", "MEX", "NIC","PAN", "PRY", "PER", "URY", "VEN")
pwt_latam <- pwt %>%
filter(isocode %in% paises_latam)
pwt_latam %>% distinct(isocode, country)## isocode country
## ARG-1950 ARG Argentina
## BOL-1950 BOL Bolivia (Plurinational State of)
## BRA-1950 BRA Brazil
## CHL-1950 CHL Chile
## COL-1950 COL Colombia
## CRI-1950 CRI Costa Rica
## DOM-1950 DOM Dominican Republic
## ECU-1950 ECU Ecuador
## GTM-1950 GTM Guatemala
## HND-1950 HND Honduras
## MEX-1950 MEX Mexico
## NIC-1950 NIC Nicaragua
## PAN-1950 PAN Panama
## PER-1950 PER Peru
## PRY-1950 PRY Paraguay
## SLV-1950 SLV El Salvador
## URY-1950 URY Uruguay
## VEN-1950 VEN Venezuela (Bolivarian Republic of)
Literal B
resumen_2019 <- pwt_latam %>%
filter(year==2019)%>%
summarise(ingreso_percapita_prom =mean(rgdpe/pop),
capital_human_prom = mean(hc))
print(resumen_2019)## ingreso_percapita_prom capital_human_prom
## 1 14024.32 2.718799
Literal C
pwt_latam_clasificado <- pwt_latam %>%
filter(year == 2019) %>%
mutate( ingreso_percapita = rgdpe / pop,
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)%>%
arrange(nivel_ingreso, desc(ingreso_percapita))
print(pwt_latam_clasificado)## isocode country ingreso_percapita
## PAN-2019 PAN Panama 29540.888
## CHL-2019 CHL Chile 23582.794
## ARG-2019 ARG Argentina 22114.713
## URY-2019 URY Uruguay 21206.487
## MEX-2019 MEX Mexico 19290.827
## CRI-2019 CRI Costa Rica 19227.795
## DOM-2019 DOM Dominican Republic 17765.905
## BRA-2019 BRA Brazil 14629.600
## COL-2019 COL Colombia 13809.437
## PER-2019 PER Peru 12404.642
## VEN-2019 VEN Venezuela (Bolivarian Republic of) 252.224
## PRY-2019 PRY Paraguay 12131.515
## ECU-2019 ECU Ecuador 11226.779
## BOL-2019 BOL Bolivia (Plurinational State of) 8625.341
## SLV-2019 SLV El Salvador 8330.070
## GTM-2019 GTM Guatemala 7921.363
## HND-2019 HND Honduras 5289.184
## NIC-2019 NIC Nicaragua 5088.126
## nivel_ingreso
## PAN-2019 Alto
## CHL-2019 Alto
## ARG-2019 Alto
## URY-2019 Alto
## MEX-2019 Alto
## CRI-2019 Alto
## DOM-2019 Alto
## BRA-2019 Alto
## COL-2019 Alto
## PER-2019 Alto
## VEN-2019 Bajo
## PRY-2019 Medio-alto
## ECU-2019 Medio-alto
## BOL-2019 Medio-alto
## SLV-2019 Medio-alto
## GTM-2019 Medio-alto
## HND-2019 Medio-alto
## NIC-2019 Medio-alto
Literal D
crecimiento_pib <- 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 * 100)
crecimiento_por_grupo <- crecimiento_pib %>%
left_join( pwt_latam_clasificado %>% select(isocode, nivel_ingreso),
by = "isocode") %>%
group_by(nivel_ingreso) %>%
summarise(crecimiento_promedio_pib = mean(crecimiento_pib),
.groups = "drop")
print(crecimiento_por_grupo)## # A tibble: 3 × 2
## nivel_ingreso crecimiento_promedio_pib
## <chr> <dbl>
## 1 Alto 11.2
## 2 Bajo -95.3
## 3 Medio-alto 11.6