CASO 3
MEDIDAS DE TENDENCIA CENTRAL. MEDIDAS DE LOCALIZACIÓN
NOMBRE:
Medidas de localización o de Tendencia Central
OBJETIVO:
Realizar cálculos para determinar medidas de localización y tendencia central como la media, mediana, moda con un conjunto de datos de personas
PASOS A SEGUIR
1.- Cargar librerías
2.- Cargar o construir los datos
3.- La media
4.- La mediana
5.- La moda
6.- Visualizar datos
7.- Interpretar y comunicar datos
PASO 1. Cargar librerías o paquetes.
a) Librería readr para cargar datos de formato csv por si lo necesitamos.
b) Librería ggplot2 que nos sirve para gráficos más amigables.
c) Librería resumeRdesc gráficos descriptivos.
library(readr) #Por si cargamos datos
library(ggplot2) #Librería para visualizar gráficamente la información
library(resumeRdesc) #Librería para estadísticos descriptivos
PASO 2. Cargar o contruir los datos.
Lo primer que haremos será poner una ‘semilla’ para que los datos que se generen aleatoriamente sean siempre los mismos.
set.seed(123)
Ahora vammos a generar esos datos aleatorios a través de variables.
• num: Las 100 personas
• Edades: Edades en un rango de 15 a 65 años.
• Pesos: Pesos en un rango de 40 a 100 kgs.
• Estaturas: Estaturas en un rango de 1.40 y 2.05 metros.
num = 100 #Total de observaciones.
Edades = sample(15:65,num, replace = TRUE)
Pesos = sample(40:100, num, replace = TRUE)
Estaturas = sample(140:205, num, replace = TRUE)/ 100
Ahora vamos a contruir un conjunto de datos llamado personas
Después, vamos a modificar el nombre del conjuto de datos personas con ‘Edad’, ‘Peso’ y ‘Estatura’ con la función names().
Para finalizar, se mostrará el conjunto de datos personas.
Personas = data.frame(Edades, Pesos, Estaturas)
names(Personas) = c("Edad", "Peso", "Estatura")
Personas
## Edad Peso Estatura
## 1 45 71 1.47
## 2 29 46 1.85
## 3 65 42 2.05
## 4 28 62 1.85
## 5 17 93 1.83
## 6 56 97 1.71
## 7 64 54 1.75
## 8 57 60 1.84
## 9 51 76 1.53
## 10 28 47 1.55
## 11 39 90 1.72
## 12 40 49 1.79
## 13 41 89 1.79
## 14 19 81 1.49
## 15 65 83 1.48
## 16 41 73 1.46
## 17 42 49 1.46
## 18 23 61 1.97
## 19 43 51 2.00
## 20 49 59 1.63
## 21 22 85 2.02
## 22 40 56 1.93
## 23 21 85 1.62
## 24 56 93 1.65
## 25 23 74 1.72
## 26 33 79 1.96
## 27 50 85 1.68
## 28 28 90 1.49
## 29 31 69 1.92
## 30 57 54 1.93
## 31 53 63 1.50
## 32 26 88 1.64
## 33 29 62 1.91
## 34 46 82 1.65
## 35 56 46 1.46
## 36 59 68 1.64
## 37 21 54 1.71
## 38 23 62 1.63
## 39 55 65 1.96
## 40 24 77 1.62
## 41 37 85 1.53
## 42 41 71 1.45
## 43 21 46 1.40
## 44 41 66 1.97
## 45 46 81 1.68
## 46 52 44 1.65
## 47 39 45 1.66
## 48 48 55 1.46
## 49 43 63 1.99
## 50 19 71 1.65
## 51 22 60 1.80
## 52 26 94 1.45
## 53 27 50 1.70
## 54 32 75 1.56
## 55 47 83 2.03
## 56 41 85 1.76
## 57 39 99 1.96
## 58 52 100 1.59
## 59 35 58 1.74
## 60 29 64 1.72
## 61 55 78 2.05
## 62 61 93 1.43
## 63 40 65 1.44
## 64 45 48 1.64
## 65 30 46 1.47
## 66 44 73 1.94
## 67 20 87 1.84
## 68 57 52 1.57
## 69 22 58 1.81
## 70 36 95 1.70
## 71 36 91 1.45
## 72 53 86 2.00
## 73 45 78 1.87
## 74 62 43 1.56
## 75 31 40 1.84
## 76 64 79 2.02
## 77 63 69 1.92
## 78 48 69 1.92
## 79 18 91 2.02
## 80 27 64 1.56
## 81 19 55 1.41
## 82 65 63 1.88
## 83 39 93 1.41
## 84 36 50 1.52
## 85 39 87 1.63
## 86 46 59 1.88
## 87 60 79 1.41
## 88 39 42 1.76
## 89 37 68 2.02
## 90 49 75 1.52
## 91 54 91 1.81
## 92 62 83 2.00
## 93 44 61 1.77
## 94 26 88 2.03
## 95 45 81 1.75
## 96 60 98 1.74
## 97 44 59 1.87
## 98 49 50 2.05
## 99 28 96 1.62
## 100 43 94 1.48
PASO 4. La mediana.
a) Edad
b) Peso
c) Estatura
Para calcular la mediana siempre se deben de organizar los números de menos a mayor
y después se escoje el valor que se encuentre justo en medio de todos los datos ya ordenados.
Cuando calculamos la media, se pueden presentar 2 casos.
Conjunto de datos impar, donde la media es el valor del dato que se encuntra justo en la mitad del conjunto.
y Conjunto de datos par, donde la media es el promedio de los 2 valores que se encuntra justo en la mitad del conjunto.
Mensaje de texto que nos diga cuál es la posición en medio del conjunto de datos.
Cuando el conjunto es impar
cat("El valor de la posición", PosicionMitad, "del conjunto de datos Edad es:",Orden.Edades[PosicionMitad])
## El valor de la posición 50 del conjunto de datos Edad es: 41
Y cuando el conjunto de datos es par debemos de agregar esta línea de código:
cat("El valor de la posición", PosicionMitad + 1, "del conjunto de datos Edad es:",Orden.Edades[PosicionMitad + 1])
## El valor de la posición 51 del conjunto de datos Edad es: 41
y en el caso par son los 2 valores que explicamos anteriormente, divididos entre 2 (o, dicho de otra manera, su promedio)
Mediana.Edades = (Orden.Edades[PosicionMitad] + Orden.Edades[PosicionMitad + 1])/2
Mediana.Edades
## [1] 41
Ahora que ya sabemos hacerlo manualmente y cómo se saca la mediana, vamos a hacerlo con la funciión median()
que lo calcula auntomáticamente.
PASO 5. La moda
a) Edad
b) Peso
c) Estatura
• Por medio de la función table() vamos a determinar la frecuencia de cada valor de edades
• Vamos a ordenar la frecuencia de manera descendiente con la función sort()
• Una vez ordenado de esa manera, podemos determinar que el valor en la posición 1 es el que más se repite,
es decir que es la moda.
Comenzamos con la variable Edad
Frecu = table(Personas$Edad) # Tomamos los datos
Frecu = sort(Frecu, decreasing = TRUE) #Los ordenamos descendientemente
Frecu #Mostramos los resultados
##
## 39 41 28 45 19 21 22 23 26 29 36 40 43 44 46 49 56 57 65 27 31 37 48 52 53 55
## 6 5 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2
## 60 62 64 17 18 20 24 30 32 33 35 42 47 50 51 54 59 61 63
## 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
ModaEd = Frecu[1] #Como habíamos dicho, la moda es la que se encuentra en la posición 1
ModaEd
## 39
## 6
cat("La moda es ", names(ModaEd), " con ", Frecu[1], " repeticiones.") #Mostramos un mensaje de texto.
## La moda es 39 con 6 repeticiones.
print("La moda de este conjunto ¿es solo una moda, es bimodal o es multimodal?")
## [1] "La moda de este conjunto ¿es solo una moda, es bimodal o es multimodal?"
Para saber esto, es necesario haber instalado la librería
install.packages(“remotes”)
de la siguiente manera:
remotes::install_github(“osoramirez/resumeRdesc”)
Utilizando la librería resumenRdesc podemos determinar la moda de una variable.
Esta librería tiene la función directa para calcular la moda.
(La librería ya la cargamos al comienzo, solo resta usarla)
ModaEd = Mode(Personas$Edad)
ModaEd
## [1] 39
Moda de: Peso
Moda.Peso = Mode(Personas$Peso)
Moda.Peso
## [1] 85
Moda de Estatura
Moda.Estatura = Mode(Personas$Estatura)
Moda.Estatura
## [1] 1.46 1.65 2.02
PASO 6. Visualizar datos.
a) Utilizar la librería ggplot2
• Ver la gráfica de barras: Edad
ggplot(data = Personas, aes(x = Edad)) +
geom_bar()

• Ver el Histograma: Edad
ggplot(data = Personas, aes(x = Edad)) +
geom_histogram(bins = 30)

• Ver el Histograma con medida de localización: Edad
ggplot(Personas, aes(x=Edad)) +
geom_histogram(aes(fill=..count..), bins=20, color="darkgreen") +
geom_vline(aes(xintercept=mean(Edad)), color="purple") +
geom_vline(aes(xintercept=median(Edad)), color= "orange")

• Ver gráfico completo: Edad
ggplot(aes(x = Edad), data = Personas) +
geom_histogram(binwidth = 1.5,
color = 'orange',
fill = 'orange',
alpha = 0.2) +
labs(title = "Histograma de variable 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 = ModaEd[1],
color = "Moda"),
linetype = "dashed",
size = 1
)

• Gráfico completo: Peso
ggplot(aes(x = Peso), data = Personas) +
geom_histogram(binwidth = 1.5,
color = 'red',
fill = 'red',
alpha = 0.2) +
labs(title = "Histograma de variable Peso") +
geom_vline(aes(xintercept = median(Peso),
color = "Mediana"),
linetype = "dashed",
size = 1) +
geom_vline(aes(xintercept = mean(Peso),
color = "Media"),
linetype = "dashed",
size = 1) +
geom_vline(
aes(xintercept = Moda.Peso[1],
color = "Moda"),
linetype = "dashed",
size = 1
)

• Gráfico completo: Estatura
ggplot(aes(x = Estatura), data = Personas) +
geom_histogram(binwidth = 0.07,
color = 'black',
fill = 'black',
alpha = 0.2) +
labs(title = "Histograma de variable Estatura") +
geom_vline(aes(xintercept = median(Estatura),
color = "Mediana"),
linetype = "dashed",
size = 1) +
geom_vline(aes(xintercept = mean(Estatura),
color = "Media"),
linetype = "dashed",
size = 1) +
geom_vline(
aes(xintercept = Moda.Estatura[1],
color = "Moda"),
linetype = "dashed",
size = 1
)

PASO 7. Interpretar y comunicar datos.
• La media de Edad es 40.73 años.
• La media de Estatura es 1.7222 metros. Eso quiere decir que son personas con estatura promedio/altas.
• La media de Peso es 70.42 kilogramos. Si tomamos en cuenta la Estatura promedio, podemos decir que es un peso saludable.
• La edad que más se repite son 39 años. Hay 6 personas con esa edad.
• Es una moda única. Solo 39 años se repite 6 veces.
• El peso más repetido son 85 kilogramos. Eso quiere decir que es una moda única.
• En la estuatura si tuvimos una moda polimodal, ya que hay 3 estaturas que son las que más se repiten:
1.46metros, 1.65 metros y 2.02 metros
• Las gráficas de barras nos son muy útiles para conocer información rápidamente, gracias a que está representada de manera gráfica.
• La librería ggplot2 nos presenta gráficas de barras más completas y con más herramientas.
Myriam Velázquez Franco.
c19041180