Librerias necesarias

library(readr)
library(dplyr)
library(fdth)

Cargar datos

datos<-read.csv("../Datos/starwars.csv", fileEncoding = "UTF-8", header = TRUE)

Revisar los datos cargados

str(datos)
## 'data.frame':    87 obs. of  11 variables:
##  $ X         : int  1 2 3 4 5 6 7 8 9 10 ...
##  $ name      : Factor w/ 87 levels "Ackbar","Adi Gallia",..: 46 15 62 21 44 54 10 64 12 53 ...
##  $ height    : int  172 167 96 202 150 178 165 97 183 182 ...
##  $ mass      : num  77 75 32 136 49 120 75 32 84 77 ...
##  $ hair_color: Factor w/ 12 levels "auburn","auburn, grey",..: 5 NA NA 10 7 8 7 NA 4 3 ...
##  $ skin_color: Factor w/ 31 levels "blue","blue, grey",..: 7 9 29 28 17 17 17 30 17 7 ...
##  $ eye_color : Factor w/ 15 levels "black","blue",..: 2 15 11 15 4 2 2 11 4 3 ...
##  $ birth_year: num  19 112 33 41.9 19 52 47 NA 24 57 ...
##  $ gender    : Factor w/ 4 levels "female","hermaphrodite",..: 3 NA NA 3 1 3 1 NA 3 3 ...
##  $ homeworld : Factor w/ 48 levels "Alderaan","Aleen Minor",..: 40 40 28 40 1 40 40 40 40 38 ...
##  $ species   : Factor w/ 37 levels "Aleena","Besalisk",..: 11 6 6 11 11 11 11 6 11 11 ...
summary(datos)
##        X                         name        height           mass        
##  Min.   : 1.0   Ackbar             : 1   Min.   : 66.0   Min.   :  15.00  
##  1st Qu.:22.5   Adi Gallia         : 1   1st Qu.:167.0   1st Qu.:  55.60  
##  Median :44.0   Anakin Skywalker   : 1   Median :180.0   Median :  79.00  
##  Mean   :44.0   Arvel Crynyd       : 1   Mean   :174.4   Mean   :  97.31  
##  3rd Qu.:65.5   Ayla Secura        : 1   3rd Qu.:191.0   3rd Qu.:  84.50  
##  Max.   :87.0   Bail Prestor Organa: 1   Max.   :264.0   Max.   :1358.00  
##                 (Other)            :81   NA's   :6       NA's   :28       
##    hair_color   skin_color   eye_color    birth_year               gender  
##  none   :37   fair   :17   brown  :21   Min.   :  8.00   female       :19  
##  brown  :18   light  :11   blue   :19   1st Qu.: 35.00   hermaphrodite: 1  
##  black  :13   dark   : 6   yellow :11   Median : 52.00   male         :62  
##  white  : 4   green  : 6   black  :10   Mean   : 87.57   none         : 2  
##  blond  : 3   grey   : 6   orange : 8   3rd Qu.: 72.00   NA's         : 3  
##  (Other): 7   pale   : 5   red    : 5   Max.   :896.00                     
##  NA's   : 5   (Other):36   (Other):13   NA's   :44                         
##      homeworld      species  
##  Naboo    :11   Human   :35  
##  Tatooine :10   Droid   : 5  
##  Alderaan : 3   Gungan  : 3  
##  Coruscant: 3   Kaminoan: 2  
##  Kamino   : 3   Mirialan: 2  
##  (Other)  :47   (Other) :35  
##  NA's     :10   NA's    : 5

Generar tabla de Distribucion de Frecuencia para gender, variable categorica, y su grafica

tabla.frec<-fdt_cat(x=datos$gender)
tabla.frec<-as.data.frame(tabla.frec)
tabla.frec
barplot(height = tabla.frec$f, names.arg = tabla.frec$Category)

Generar tabla de Distribucion de Frecuencia para homeworld, variable categorica, y su grafica

tabla.frec2<-fdt_cat(x=datos$homeworld)
tabla.frec2<-as.data.frame(tabla.frec2)
tabla.frec2
barplot(height = tabla.frec2$f, names.arg = tabla.frec2$Category)

Generar tabla de Distribucion de Frecuencia para species, variable categorica, y su grafica

tabla.frec3<-fdt_cat(x=datos$species)
tabla.frec3<-as.data.frame(tabla.frec3)
tabla.frec3
barplot(height = tabla.frec3$f, names.arg = tabla.frec3$Category)

Generar tabla de Distribucion de Frecuencia para height estatura y su grafica

tabla.frec4<-fdt(x=datos$height)
tabla.frec4
##       Class limits  f   rf rf(%) cf  cf(%)
##    [65.34,90.5025)  3 0.04  3.70  3   3.70
##  [90.5025,115.665)  5 0.06  6.17  8   9.88
##  [115.665,140.827)  2 0.02  2.47 10  12.35
##   [140.827,165.99)  9 0.11 11.11 19  23.46
##   [165.99,191.152) 43 0.53 53.09 62  76.54
##  [191.152,216.315) 14 0.17 17.28 76  93.83
##  [216.315,241.477)  4 0.05  4.94 80  98.77
##   [241.477,266.64)  1 0.01  1.23 81 100.00
barplot(height = tabla.frec4$table$f, names.arg = tabla.frec4$table$`Class limits`)

Generar tabla de Distribucion de Frecuencia para mass peso y su grafica

tabla.frec5<-fdt(x=datos$mass)
tabla.frec5
##         Class limits  f   rf rf(%) cf  cf(%)
##     [14.85,208.6686) 58 0.98 98.31 58  98.31
##  [208.6686,402.4871)  0 0.00  0.00 58  98.31
##  [402.4871,596.3057)  0 0.00  0.00 58  98.31
##  [596.3057,790.1243)  0 0.00  0.00 58  98.31
##  [790.1243,983.9429)  0 0.00  0.00 58  98.31
##  [983.9429,1177.761)  0 0.00  0.00 58  98.31
##   [1177.761,1371.58)  1 0.02  1.69 59 100.00
barplot(height = tabla.frec5$table$f, names.arg = tabla.frec5$table$`Class limits`)