CASO IV. Cuartiles y Percentiles

Descripción

Con una base de datos de personas como la estatura, peso y edad con medidas de localización y tendencia central, al igual mostrar los datos, medidas, visualizar gráficamente e interpretarlas medidas.

Marco Conceptual

Pendiente

Proceso

1. Cargar: librerías
  • library(readr) # Por si acaso cargar datos *library(ggplot2) # Para visualizar
  • library(resumeRdesc) # Para estadísticos
2. Cargar o construir: los datos
  • 100 observaciones
  • Utilizar rnorm() con los parámetros necesarios
3. Cuartiles al: 25%, 50% y 75%
  • edad
  • peso
  • estatura
4. Percentiles:
  • edad
  • peso
  • estatura
5. Visualizar: datos
  • Utilizar la librería ggplot2
  • Diagrama de caja
6. Interpretar y comunicar: datos

1.- Cargar: librerías

library(readr)
library (ggplot2)

2.- Construir los: datos

  • Semilla para datos aleatorios
set.seed(2020)
  • Simular los datos, utilizar rnorm()

  • n Total de observaciones de la muestra

  • edades en donde la media sea 45 años y desviación stándard igual a 10 años

  • pesos en donde la media sea 75 kgs y desviación standard = 15 kgs

  • estaturas en donde la media sea 1.70 y desviación estándard igual a 0.10

  • Construir un conjunto de datos llamado personas

  • Modificar en caso necesario el nombre del conjunto de datos personas a ‘edad’, ‘peso’ y ‘estatura’ con la función name()

  • Mostrar el conjunto de datos personas

  • Pimero los datos de las medias de las variables de inicio y de interés: edad, peso y estatura

n <-  100
media.edad <- 45; ds.edad <- 10
media.peso <- 75; ds.peso <- 15
media.estatura <- 1.70; ds.estatura <- 0.10
  • Segundo Contruir el conjunto de datos personas
  • head(personas); tail(personas), los primeros y últimos seis registros u observaciones del conjunto de datos
  • rnorm() estaá generando números aleatorios basados en una media y en una desviación estandard
edad <- round(rnorm(n = n, mean = media.edad, sd = ds.edad),0)
peso <- round(rnorm(n = n, mean = media.peso, sd = ds.peso),2)
estatura <- round(rnorm(n = n, mean = media.estatura, sd = ds.estatura),2)

personas <- data.frame(edad, peso, estatura)

head(personas); tail(personas)
##   edad  peso estatura
## 1   49 49.07     1.63
## 2   48 60.13     1.79
## 3   34 66.22     1.66
## 4   34 80.75     1.74
## 5   17 86.20     1.60
## 6   52 61.07     1.57
##     edad  peso estatura
## 95    43 64.09     1.73
## 96    37 84.40     1.63
## 97    48 58.63     1.65
## 98    52 67.26     1.88
## 99    40 75.25     1.60
## 100   38 84.91     1.64

3.- Cuartiles al 25%, 50% y 75%

  • Variable de interés es edad
  • cuartiles generado es un Vector de 3 posiciones [1], [2] y [3]
cuartiles <- quantile(personas$edad, probs = c(0.25, 0.50, 0.75), type = 6)
cuartiles[1]
## 25% 
##  39
cuartiles[2]
## 50% 
##  46
cuartiles[3]
##   75% 
## 52.75

4.- Percentiles

  • percentiles es un Vector de 5 posiciones [1],[2],[3],[4],[5]
percentil <- quantile(personas$edad, probs = c(0.10, 0.30, 0.50, 0.70, 0.90), type = 7)
percentil[1]
##  10% 
## 32.9
percentil[2]
##  30% 
## 41.7
percentil[3]
## 50% 
##  46
percentil[4]
## 70% 
##  51
percentil[5]
##  90% 
## 61.1

5.- Visualizar datos

  • Histograma de edad con ggplot
ggplot(data = personas, aes(edad, colour = 'edad')) +
    geom_histogram(position = "stack", bins = 30)

* Densidad de edad con ggplot

ggplot(data = personas, aes(edad, colour = 'edad')) +
    geom_density()

* Histograma media, mediana juntos

ggplot(data = personas, aes(edad)) +
    geom_histogram(bins = 30) + 
    geom_vline(aes(xintercept = median(edad),
                  color = "mediana"),
              linetype = "dashed",
              size = 1) +
    geom_vline(aes(xintercept = mean(edad),
                  color = "media"),
              linetype = "dashed",
              size = 1) +
  labs(title = "Histograma de Edad",subtitle =  paste("Media = ", round(mean(edad),2), ", Mediana = ", round(median(edad),2)))

* Histograma y cuartiles juntos

ggplot(data = personas, aes(edad)) +
    geom_histogram(bins = 30) + 
    geom_vline(aes(xintercept = cuartiles[1],
                  color = "Q1"),
              linetype = "dashed",
              size = 1) +
    geom_vline(aes(xintercept = cuartiles[2],
                  color = "Q2"),
              linetype = "dashed",
              size = 1) +
    geom_vline(aes(xintercept = cuartiles[3],
                  color = "Q3"),
              linetype = "dashed",
              size = 1) +  
  labs(title = "Histograma de Edad",subtitle =  paste("Cuartil 1 al 25% = ",round(cuartiles[1],2), ", Cuartil 2 al 50% = ",round(cuartiles[2],2), ", Cuartil 3 al 75% = ",round(cuartiles[3],2)))

* Histograma y percentiles juntos

ggplot(data = personas, aes(edad)) +
    geom_histogram(bins = 30) + 
    geom_vline(aes(xintercept = percentil[1],
                  color = "Perc1"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = percentil[2],
                  color = "Perc2"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = percentil[3],
                  color = "Perc3"),
              linetype = "solid",
              size = 2) +  
      geom_vline(aes(xintercept = percentil[4],
                  color = "Perc4"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = percentil[5],
                  color = "Perc5"),
              linetype = "solid",
              size = 2) + 
  labs(title = "Histograma de Edad. Perc = Percentiles",subtitle =  paste("Perc al 10% = ",round(percentil[1],2), "Perc al 30% = ",round(percentil[2],2),"Perc al 50% = ",round(percentil[3],2),"Perc al 70% = ",round(percentil[4],2),"Perc al 90% = ",round(percentil[5],2)))

7. Interpretar y comunicar datos

Proceso terminado.