Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Camilo Castillo
En esta clase vamos a manipular los datos de una base. El objetivo es utilizar algunos comandos para
segmentar, filtrar, resumir o transformar los datos y uno de los paquetes m’as utilizados es dplyr. En dplyr
encontraremos funciones como:
1. filter.
2. select.
3. distinct.
4. summarize.
5. count.
6. mean.
7. mutate.
Durante la clase vamos a recorrer todos los comandos anteriores. A diferencia de las clases anteriores
desarrollaremos ejercicios durante la clase para entender mejor el funcionamiento de cada comando. Las
bases de datos que vamos a trabajar est’an en las p’aginas https://covid.ourworldindata.org/data/ecdc/
full_data.csv y https://covid.ourworldindata.org/data/ecdc/locations.csv.
library(kableExtra)
full <- read.csv("https://covid.ourworldindata.org/data/ecdc/full_data.csv")
pobl=read.csv("https://covid.ourworldindata.org/data/ecdc/locations.csv")
COVID=merge(full,pobl, by="location")
Ejercicio
1
Todos los comandos dentro de dplyr retornan un Data Frame y la sintaxis es muy parecida, recibe como
primera entrada el Data Frame a manipular y las siguientes son opciones propias de cada comando. Comence-
mos cargando el paquete dplyr y estudiando el comando select
library(dplyr)
Select
El comando select() nos permite guardar solo las variables que seleccionemos.
base1=select(COVID,location,date,new_cases,new_deaths,total_cases,total_deaths,population)
str(base1,3)
Note la cantidad de variables que tiene base1. dplyr tiene una gran herramienta para organizar mejor
nuestro c’odigo, esta herramienta es conocida como pip. Vemos el comando select utilizando pipes.
Ejercicio
1. A partir de COVID construya una base bajo el nombre ejercicio que solo contenga las variables:
location, date, continent, new cases, new deaths, total cases y total deaths.
2. Imprima en consola las primeras 3 observaciones.
distinct
El comando distinct construye un df con los valores diferentes de una variable
COVID %>%
distinct(continent)
## continent
## 1 Asia
## 2 Europe
## 3 Africa
## 4 North America
## 5 South America
## 6 Oceania
## 7
Note que no se asign’o nombre, es decir no se guarda en consola el retorno del comando.
2
Filter
El comando filter nos permite construir un Data Frame con alguna condici’on sobre las variables (filtra
las variables).
str(America)
El comando filter realiza una prueba l’ogica, en el caso del ejemplo la prueba es mirar si cada elemento de
la variable continent es igual a North America o South America, de ser Verdadero lo guarda en el nuevo
df.
Algunos comandos l’ogicos ’utiles:
• == (igual).
• > , < (mayor que, menor que).
• >= , <= (mayor o igual, menor o igual).
• & (y).
• | (o).
• ! (no).
• is.na().
• between().
Ejercicio
Summarize
COVID %>%
summarize(media=mean(total_cases, na.rm = T))
## media
## 1 42257.42
3
group_by
COVID %>%
group_by(continent) %>%
summarize(media_continente =mean(na.omit(new_cases)))
## # A tibble: 7 x 2
## continent media_continente
## <chr> <dbl>
## 1 "" 10.9
## 2 "Africa" 136.
## 3 "Asia" 783.
## 4 "Europe" 346.
## 5 "North America" 1160.
## 6 "Oceania" 20.2
## 7 "South America" 2729.
Ejercicio
1. Construya un df con la media y la desviaci’on est’andar de la variable new_deaths para cada d’ia.
2. Construya una gr’afica con plot de la tabla anterior.
Mutate
El comando mutate construye nuevas variables en el df a partir de variables ya existentes. Las nuevas
variables son transformaciones de las variables existentes.
Ejemplo
COVID$date =as.Date(COVID$date)
COVID_Ultimo_dia$Porcent[COVID_Ultimo_dia$location == "Colombia"]
## [1] 0.000424799
Count
4
Ejemplo
COVID%>%
filter(continent == "South America")%>%
count(location)
## location n
## 1 Argentina 188
## 2 Bolivia 180
## 3 Brazil 253
## 4 Chile 188
## 5 Colombia 183
## 6 Ecuador 253
## 7 Falkland Islands 158
## 8 Guyana 178
## 9 Paraguay 182
## 10 Peru 185
## 11 Suriname 173
## 12 Uruguay 178
## 13 Venezuela 178
Ejercicio