Usar el conjunto de datos starwars mediante la libreria dplyr

Cargar la librería

library(dplyr)
## Warning: package 'dplyr' was built under R version 3.6.2
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union

Cargar los datos

datos <- data.frame(starwars)

# datos <- read.csv("ruta/starwars.csv")

Funcionalidades de dplyr

Para que sirve

select
select(datos, name, gender)
##                     name        gender
## 1         Luke Skywalker          male
## 2                  C-3PO          <NA>
## 3                  R2-D2          <NA>
## 4            Darth Vader          male
## 5            Leia Organa        female
## 6              Owen Lars          male
## 7     Beru Whitesun lars        female
## 8                  R5-D4          <NA>
## 9      Biggs Darklighter          male
## 10        Obi-Wan Kenobi          male
## 11      Anakin Skywalker          male
## 12        Wilhuff Tarkin          male
## 13             Chewbacca          male
## 14              Han Solo          male
## 15                Greedo          male
## 16 Jabba Desilijic Tiure hermaphrodite
## 17        Wedge Antilles          male
## 18      Jek Tono Porkins          male
## 19                  Yoda          male
## 20             Palpatine          male
## 21             Boba Fett          male
## 22                 IG-88          none
## 23                 Bossk          male
## 24      Lando Calrissian          male
## 25                 Lobot          male
## 26                Ackbar          male
## 27            Mon Mothma        female
## 28          Arvel Crynyd          male
## 29 Wicket Systri Warrick          male
## 30             Nien Nunb          male
## 31          Qui-Gon Jinn          male
## 32           Nute Gunray          male
## 33         Finis Valorum          male
## 34         Jar Jar Binks          male
## 35          Roos Tarpals          male
## 36            Rugor Nass          male
## 37              Ric Olié          male
## 38                 Watto          male
## 39               Sebulba          male
## 40         Quarsh Panaka          male
## 41        Shmi Skywalker        female
## 42            Darth Maul          male
## 43           Bib Fortuna          male
## 44           Ayla Secura        female
## 45              Dud Bolt          male
## 46               Gasgano          male
## 47        Ben Quadinaros          male
## 48            Mace Windu          male
## 49          Ki-Adi-Mundi          male
## 50             Kit Fisto          male
## 51             Eeth Koth          male
## 52            Adi Gallia        female
## 53           Saesee Tiin          male
## 54           Yarael Poof          male
## 55              Plo Koon          male
## 56            Mas Amedda          male
## 57          Gregar Typho          male
## 58                 Cordé        female
## 59           Cliegg Lars          male
## 60     Poggle the Lesser          male
## 61       Luminara Unduli        female
## 62         Barriss Offee        female
## 63                 Dormé        female
## 64                 Dooku          male
## 65   Bail Prestor Organa          male
## 66            Jango Fett          male
## 67            Zam Wesell        female
## 68       Dexter Jettster          male
## 69               Lama Su          male
## 70               Taun We        female
## 71            Jocasta Nu        female
## 72         Ratts Tyerell          male
## 73                R4-P17        female
## 74            Wat Tambor          male
## 75              San Hill          male
## 76              Shaak Ti        female
## 77              Grievous          male
## 78               Tarfful          male
## 79       Raymus Antilles          male
## 80             Sly Moore        female
## 81            Tion Medon          male
## 82                  Finn          male
## 83                   Rey        female
## 84           Poe Dameron          male
## 85                   BB8          none
## 86        Captain Phasma        female
## 87         Padmé Amidala        female
filter
datostemp <- select(datos, name, gender)
masculinos <-  filter(datostemp, gender == 'male')

masculinos
##                     name gender
## 1         Luke Skywalker   male
## 2            Darth Vader   male
## 3              Owen Lars   male
## 4      Biggs Darklighter   male
## 5         Obi-Wan Kenobi   male
## 6       Anakin Skywalker   male
## 7         Wilhuff Tarkin   male
## 8              Chewbacca   male
## 9               Han Solo   male
## 10                Greedo   male
## 11        Wedge Antilles   male
## 12      Jek Tono Porkins   male
## 13                  Yoda   male
## 14             Palpatine   male
## 15             Boba Fett   male
## 16                 Bossk   male
## 17      Lando Calrissian   male
## 18                 Lobot   male
## 19                Ackbar   male
## 20          Arvel Crynyd   male
## 21 Wicket Systri Warrick   male
## 22             Nien Nunb   male
## 23          Qui-Gon Jinn   male
## 24           Nute Gunray   male
## 25         Finis Valorum   male
## 26         Jar Jar Binks   male
## 27          Roos Tarpals   male
## 28            Rugor Nass   male
## 29              Ric Olié   male
## 30                 Watto   male
## 31               Sebulba   male
## 32         Quarsh Panaka   male
## 33            Darth Maul   male
## 34           Bib Fortuna   male
## 35              Dud Bolt   male
## 36               Gasgano   male
## 37        Ben Quadinaros   male
## 38            Mace Windu   male
## 39          Ki-Adi-Mundi   male
## 40             Kit Fisto   male
## 41             Eeth Koth   male
## 42           Saesee Tiin   male
## 43           Yarael Poof   male
## 44              Plo Koon   male
## 45            Mas Amedda   male
## 46          Gregar Typho   male
## 47           Cliegg Lars   male
## 48     Poggle the Lesser   male
## 49                 Dooku   male
## 50   Bail Prestor Organa   male
## 51            Jango Fett   male
## 52       Dexter Jettster   male
## 53               Lama Su   male
## 54         Ratts Tyerell   male
## 55            Wat Tambor   male
## 56              San Hill   male
## 57              Grievous   male
## 58               Tarfful   male
## 59       Raymus Antilles   male
## 60            Tion Medon   male
## 61                  Finn   male
## 62           Poe Dameron   male
arrange
arrange(masculinos, desc(name) )
##                     name gender
## 1                   Yoda   male
## 2            Yarael Poof   male
## 3         Wilhuff Tarkin   male
## 4  Wicket Systri Warrick   male
## 5         Wedge Antilles   male
## 6                  Watto   male
## 7             Wat Tambor   male
## 8             Tion Medon   male
## 9                Tarfful   male
## 10               Sebulba   male
## 11              San Hill   male
## 12           Saesee Tiin   male
## 13            Rugor Nass   male
## 14          Roos Tarpals   male
## 15              Ric Olié   male
## 16       Raymus Antilles   male
## 17         Ratts Tyerell   male
## 18          Qui-Gon Jinn   male
## 19         Quarsh Panaka   male
## 20     Poggle the Lesser   male
## 21           Poe Dameron   male
## 22              Plo Koon   male
## 23             Palpatine   male
## 24             Owen Lars   male
## 25        Obi-Wan Kenobi   male
## 26           Nute Gunray   male
## 27             Nien Nunb   male
## 28            Mas Amedda   male
## 29            Mace Windu   male
## 30        Luke Skywalker   male
## 31                 Lobot   male
## 32      Lando Calrissian   male
## 33               Lama Su   male
## 34             Kit Fisto   male
## 35          Ki-Adi-Mundi   male
## 36      Jek Tono Porkins   male
## 37         Jar Jar Binks   male
## 38            Jango Fett   male
## 39              Han Solo   male
## 40              Grievous   male
## 41          Gregar Typho   male
## 42                Greedo   male
## 43               Gasgano   male
## 44                  Finn   male
## 45         Finis Valorum   male
## 46             Eeth Koth   male
## 47              Dud Bolt   male
## 48                 Dooku   male
## 49       Dexter Jettster   male
## 50           Darth Vader   male
## 51            Darth Maul   male
## 52           Cliegg Lars   male
## 53             Chewbacca   male
## 54                 Bossk   male
## 55             Boba Fett   male
## 56     Biggs Darklighter   male
## 57           Bib Fortuna   male
## 58        Ben Quadinaros   male
## 59   Bail Prestor Organa   male
## 60          Arvel Crynyd   male
## 61      Anakin Skywalker   male
## 62                Ackbar   male

Agrupar y resumir

  • group by
  • summarize
  • pipes %>%
cuantos.Genero <- data.frame(datos %>%
    group_by(gender) %>%
    summarise(cuantos = n()))

cuantos.Genero
##          gender cuantos
## 1        female      19
## 2 hermaphrodite       1
## 3          male      62
## 4          none       2
## 5          <NA>       3

Limpiar los datos

  • Significa que si se detectan datos como por ejemplo A, habrpa que tomar la decisión de que hacer con estos datos.
  • Se detectó que en la variable worldhome tenía varios NA, se tomó la decisión de modificar su valor a ‘star’ cuando tuvieran valor NA en esa variable.
mutate
  • Por medio de mutate() se quitarán los NA en el campo worldhome usado mas adelante
datos <- datos %>%
    mutate(homeworld = ifelse(is.na(homeworld), "star", homeworld))
cuantos.Origen <- data.frame(datos %>%
                               group_by(homeworld) %>%
                               summarise(cuantos = n()))

cuantos.Origen <- arrange(cuantos.Origen, desc(cuantos))

cuantos.Origen
##         homeworld cuantos
## 1           Naboo      11
## 2            star      10
## 3        Tatooine      10
## 4        Alderaan       3
## 5       Coruscant       3
## 6          Kamino       3
## 7        Corellia       2
## 8        Kashyyyk       2
## 9          Mirial       2
## 10         Ryloth       2
## 11    Aleen Minor       1
## 12         Bespin       1
## 13     Bestine IV       1
## 14 Cato Neimoidia       1
## 15          Cerea       1
## 16       Champala       1
## 17      Chandrila       1
## 18   Concord Dawn       1
## 19       Dathomir       1
## 20          Dorin       1
## 21          Endor       1
## 22         Eriadu       1
## 23       Geonosis       1
## 24    Glee Anselm       1
## 25     Haruun Kal       1
## 26        Iktotch       1
## 27       Iridonia       1
## 28          Kalee       1
## 29      Malastare       1
## 30       Mon Cala       1
## 31     Muunilinst       1
## 32      Nal Hutta       1
## 33           Ojom       1
## 34        Quermia       1
## 35          Rodia       1
## 36        Serenno       1
## 37          Shili       1
## 38          Skako       1
## 39        Socorro       1
## 40        Stewjon       1
## 41        Sullust       1
## 42       Toydaria       1
## 43      Trandosha       1
## 44        Troiken       1
## 45           Tund       1
## 46         Umbara       1
## 47         Utapau       1
## 48        Vulpter       1
## 49          Zolan       1