install.packages(“rometes”) remotes::install_github(“osoramirez/resumeRdesc”)
library(readr) # Por si acaso cargamos datos ...
library(ggplot2) # Para visualizar
library(resumeRdesc) # Para estadísticos descriptivos
set.seed(2020)
n <- 100 # Total de observaciones
edades <- sample(15:90, n, replace = TRUE)
pesos <- sample(40:90, n, replace = TRUE)
estaturas <- sample(110:200, n, replace = TRUE) /100
personas <- data.frame(edades, pesos, estaturas)
names(personas) <- c("edad", "peso", "estatura")
personas
## edad peso estatura
## 1 42 49 1.34
## 2 36 90 1.45
## 3 79 86 1.32
## 4 31 50 1.83
## 5 50 90 1.60
## 6 56 56 1.73
## 7 84 78 1.22
## 8 63 52 1.36
## 9 70 49 1.36
## 10 86 77 2.00
## 11 56 60 1.29
## 12 43 49 1.32
## 13 17 50 1.80
## 14 80 86 1.37
## 15 18 42 1.78
## 16 90 64 1.61
## 17 62 83 2.00
## 18 61 70 1.48
## 19 21 62 1.62
## 20 32 90 1.95
## 21 66 84 1.94
## 22 62 87 1.98
## 23 58 43 1.54
## 24 24 60 1.57
## 25 84 80 1.99
## 26 57 76 1.25
## 27 46 42 1.92
## 28 27 65 1.35
## 29 80 40 1.51
## 30 15 68 1.82
## 31 52 53 1.37
## 32 17 63 1.59
## 33 43 66 1.74
## 34 39 78 1.51
## 35 59 57 1.43
## 36 57 75 1.54
## 37 83 58 1.15
## 38 72 64 1.97
## 39 80 77 1.60
## 40 39 43 1.12
## 41 49 49 1.56
## 42 38 65 1.35
## 43 64 90 1.63
## 44 47 63 1.65
## 45 21 60 1.47
## 46 22 74 1.43
## 47 70 83 1.13
## 48 27 64 1.82
## 49 83 82 1.83
## 50 82 61 1.52
## 51 33 72 1.51
## 52 37 54 1.85
## 53 82 70 1.50
## 54 56 51 1.39
## 55 15 70 1.41
## 56 61 40 1.65
## 57 45 90 1.40
## 58 74 89 1.47
## 59 30 66 1.36
## 60 84 43 1.56
## 61 69 42 1.20
## 62 40 59 1.11
## 63 24 63 1.84
## 64 42 59 1.10
## 65 79 83 1.87
## 66 31 68 1.16
## 67 54 40 1.28
## 68 29 78 1.79
## 69 58 83 1.62
## 70 64 83 1.90
## 71 19 61 1.54
## 72 62 51 1.83
## 73 34 51 1.21
## 74 66 49 1.63
## 75 28 52 1.20
## 76 27 66 1.68
## 77 42 84 1.98
## 78 55 81 1.37
## 79 74 80 1.39
## 80 54 83 1.39
## 81 41 68 1.21
## 82 73 64 1.91
## 83 49 58 1.80
## 84 16 41 1.80
## 85 22 88 1.67
## 86 75 83 1.79
## 87 46 43 1.79
## 88 82 50 1.99
## 89 53 58 1.69
## 90 60 90 1.48
## 91 69 90 1.83
## 92 67 68 1.67
## 93 50 90 1.93
## 94 62 80 1.12
## 95 55 41 1.55
## 96 43 59 1.11
## 97 16 46 1.88
## 98 46 47 1.23
## 99 31 53 1.80
## 100 51 83 1.39
media.edad <- sum(personas$edad) / n
media.edad
## [1] 51.15
media.edad <- mean(personas$edad)
media.edad
## [1] 51.15
mediana.edad <- median(personas$edad)
mediana.edad
## [1] 52.5
orden.personas.edad <- sort(personas$edad)
posicion <- ceiling(n /2)
orden.personas.edad
## [1] 15 15 16 16 17 17 18 19 21 21 22 22 24 24 27 27 27 28 29 30 31 31 31 32 33
## [26] 34 36 37 38 39 39 40 41 42 42 42 43 43 43 45 46 46 46 47 49 49 50 50 51 52
## [51] 53 54 54 55 55 56 56 56 57 57 58 58 59 60 61 61 62 62 62 62 63 64 64 66 66
## [76] 67 69 69 70 70 72 73 74 74 75 79 79 80 80 80 82 82 82 83 83 84 84 84 86 90
cat("Valor de la posición ",posicion, " del conjunto de datos (Vector) edades es: ", orden.personas.edad[posicion])
## Valor de la posición 50 del conjunto de datos (Vector) edades es: 52
mediana.edad <- sum(orden.personas.edad[posicion], orden.personas.edad[posicion + 1]) / 2
mediana.edad
## [1] 52.5
frecuencia <- table(personas$edad)
frecuencia <- sort(frecuencia, decreasing = TRUE)
frecuencia
##
## 62 27 31 42 43 46 56 80 82 84 15 16 17 21 22 24 39 49 50 54 55 57 58 61 64 66
## 4 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## 69 70 74 79 83 18 19 28 29 30 32 33 34 36 37 38 40 41 45 47 51 52 53 59 60 63
## 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 67 72 73 75 86 90
## 1 1 1 1 1 1
moda <- frecuencia[1]
moda
## 62
## 4
cat("La moda de edad es: ", names(moda), " con ", frecuencia[1])
## La moda de edad es: 62 con 4
print("¿Es una sola moda, bimodal o multimodal ?")
## [1] "¿Es una sola moda, bimodal o multimodal ?"
library(resumeRdesc)
moda <- Mode(personas$edad)
moda
## [1] 62
ggplot(data = personas, aes(x = edad)) +
geom_bar()
*Histograma de edad
ggplot(data = personas, aes(x = edad)) +
geom_histogram(bins = 30)
*Histograma de edad con medidas de localizacion
ggplot(personas, aes(x=edad)) +
geom_histogram(aes(fill=..count..), bins=20, color="white") +
geom_vline(aes(xintercept=mean(edad)), color="red") +
geom_vline(aes(xintercept=median(edad)), color= "darkgreen")
*Grafico mas complejo
ggplot(aes(x = edad), data = personas) +
geom_histogram(color = 'green',
fill = 'green',
alpha = 0.2) +
labs(title = "Histograma de Edad") +
geom_vline(aes(xintercept = median(edad),
color = "mediana"),
linetype = "dashed",
size = 1) +
geom_vline(aes(xintercept = mean(edad),
color = "media"),
linetype = "dashed",
size = 1) +
geom_vline(
aes(xintercept = moda[1],
color = "moda"),
linetype = "dashed",
size = 1
)
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.