1 Objetivo

Agrupar datos y describir datos visualmente de variables de edades y generos usando función fdt y fdt_cat de la librería fdth.

2 Descripción

Se cargan librerías adecuadas de caso

Se construyen y simulan datos con dos variables de interés edades y géneros de personas.

Se determina las clase para construir tablas de frecuencias de los datos a partir de las variables de interés edades y géneros.

Se visualizan frecuencias con histograma y gráfico de tallo y hoja para datos numéricos (edades) y gráfico de barra para datos categórico o tipo character (géneros).

Se interpreta el caso

3 Fundamento teórico

3.1 Datos agrupados

Los datos agrupados y no agrupados se les llaman en estadística a la manera de representar y analizar la información que has reunido o que dispones.

La idea de datos agrupados tiene que ver con definir un conjunto de clases que identifican de manera organizada un conjunto de datos.

Los datos no agrupados es el conjunto de observaciones que se presentan en su forma original tal y como fueron recolectados, para obtener información directamente de ellos.

Los datos no agrupados es un conjunto de información sin ningún orden que ayude a establecer relación clara con lo que se pretende desarrollar a lo largo de un problema, esto se soluciona mediante una tabulación que conduce a una tabla de frecuencias.

Los valores agrupados son datos que se dan en intervalos de clase, en un rango, como cuando se resumen para una distribución de frecuencias.

La imagen anterior es un ejemplo de datos agrupados.

3.2 Frecuencia

La frecuencia o la frecuencia absoluta es el número de veces que aparece un determinado valor en un estudio estadístico El número de repeticiones de un valor dentro de una muestra o población. Se cuenta el número de veces que aparece. La suma de las frecuencias absolutas es igual al número total de datos o sea n.

3.3 Frecuencia relativa

La relación de la frecuencia con respeto al número de elementos n. Es el cociente entre la frecuencia absoluta de un determinado valor y el número total de datos. La suma de la frecuencia relativa es 1.

3.4 Frecuencia porcentual

Es la representación porcentual de la frecuencia relativa con respecto al 100%, es decir multiplicar la frecuencia relativa por 100. La suma de la frecuencia porcentual (%) debe ser el 100%.

3.5 Frecuecia acumulada

Define la sumatoria parcial y total de la frecuencia, puede ser la frecuencia absoluta, relativa o la porcentual.

3.6 Clases

Las clases definen los valores únicos del conjunto de datos o un intervalo que define y agrupa cierto conjunto de datos. Las clases clasifican y agrupan el total de los datos.

3.7 Puntos medios y límites

Los límites de clase son los valores mínimos y máximos de una clase, los intervalos de clase es la diferencia entre límite superior y límite inferior y los pintos medios es el valor medio entre cada rango de cada clase.

3.8 Fórmulas para determinar la cantidad de clases

3.8.1 Regla de Sturges

La regla de Sturges es un criterio utilizado para determinar el número de clases o intervalos que son necesarios para representar gráficamente un conjunto de datos estadísticos.

La fórmula para calcular el número de clases de acuerdo a Sturges es:

\[ k=1+3.322\cdot log10(N) \]

  • k es el número de clases.

  • N es el número total de observaciones de la muestra.

  • Log es el logaritmo común de base 10.

El rango de clase de acuerdo a Sturges está dada por: \[ h=\frac{max(datos) - min(datos)}{k} \]

3.8.2 Regla de Scott

\[ k=3.5\cdot S \cdot n^{-1/3} \] * S es la desviación estándar * n el total de elementos

3.8.3 Regla de Freedman & Diaconis (FD)

\[ k = 2 \cdot IQ \cdot n ^ {-\frac{1}{3}} \]

  • IQ es el el rango intercuartílico
  • n es el total de los datos

4 Desarrollo

4.1 Cargar librerías

library(fdth)     # Tablas de frecuencia
## 
## Attaching package: 'fdth'
## The following objects are masked from 'package:stats':
## 
##     sd, var
library(ggplot2)  # Visualizar datos

4.2 Crear datos

Sembrar semilla

set.seed(1984)

Aquí creamos nuestra población de un tamaño de 300.

Creamos dos vectores (edades y géneros) y después los unimos en un data frame

n = 300
edades <- sample(x = 18:28, size = n, replace = TRUE)
generos <- sample(x = c('FEMENINO', 'MASCULINO'), size = n, replace = TRUE)
datos <- data.frame(edades, generos)

4.3 Mostrar los primeros diez

La función head() y describe o muestra la cantidad de observaciones de los que se especifica, los primeros registros.

head(datos, 10)
##    edades   generos
## 1      25  FEMENINO
## 2      21 MASCULINO
## 3      27 MASCULINO
## 4      18  FEMENINO
## 5      22  FEMENINO
## 6      20 MASCULINO
## 7      25 MASCULINO
## 8      18  FEMENINO
## 9      21 MASCULINO
## 10     25  FEMENINO

4.4 Mostrar los últimos diez

La función tail() muestra los últimos registros que se especifican.

tail(datos, 10)
##     edades   generos
## 291     19 MASCULINO
## 292     23  FEMENINO
## 293     25 MASCULINO
## 294     19  FEMENINO
## 295     28  FEMENINO
## 296     27 MASCULINO
## 297     19  FEMENINO
## 298     20  FEMENINO
## 299     19 MASCULINO
## 300     20  FEMENINO

4.5 Crear tabla de frecuencias y visualizar datos

4.5.1 Variable edades

Se utiliza la variable de interés edades del conjunto de datos

tabla.frec.edades1 <- fdt(x = datos$edades, breaks = "Sturges")
tabla.frec.edades1
##     Class limits  f   rf rf(%)  cf  cf(%)
##   [17.82,18.866) 31 0.10 10.33  31  10.33
##  [18.866,19.912) 26 0.09  8.67  57  19.00
##  [19.912,20.958) 16 0.05  5.33  73  24.33
##  [20.958,22.004) 52 0.17 17.33 125  41.67
##   [22.004,23.05) 24 0.08  8.00 149  49.67
##   [23.05,24.096) 31 0.10 10.33 180  60.00
##  [24.096,25.142) 40 0.13 13.33 220  73.33
##  [25.142,26.188) 19 0.06  6.33 239  79.67
##  [26.188,27.234) 30 0.10 10.00 269  89.67
##   [27.234,28.28) 31 0.10 10.33 300 100.00
tabla.frec.edades2 <- fdt(x = datos$edades, start = min(datos$edades)-1, end = max(datos$edades)+1, h = 1)
tabla.frec.edades2
##  Class limits  f   rf rf(%)  cf  cf(%)
##       [17,18)  0 0.00  0.00   0   0.00
##       [18,19) 31 0.10 10.33  31  10.33
##       [19,20) 26 0.09  8.67  57  19.00
##       [20,21) 16 0.05  5.33  73  24.33
##       [21,22) 27 0.09  9.00 100  33.33
##       [22,23) 25 0.08  8.33 125  41.67
##       [23,24) 24 0.08  8.00 149  49.67
##       [24,25) 31 0.10 10.33 180  60.00
##       [25,26) 40 0.13 13.33 220  73.33
##       [26,27) 19 0.06  6.33 239  79.67
##       [27,28) 30 0.10 10.00 269  89.67
##       [28,29) 31 0.10 10.33 300 100.00

4.5.2 Histograma

Un histograma es un representación gráfica organizada que describe frecuencias de clases de datos numéricos en forma de barra.

ggplot(data = datos) +
  geom_histogram(aes(x = edades), fill = "#78B6B1", binwidth = 0.45)

4.5.3 Histograma usando hist()

La función hist() no requiere librería y se puede utilizar directamente para representar un histograma y determina frecuencia. En este ejemplo con valores similares a la tabla.frec.edades2.

hist(datos$edades, breaks = (min(edades)-1):(max(edades)+1), main = "Histograma edades de 18 a 28", xlab = "Edades", ylab = "Frecuencia")

4.5.4 Diagrama de tallo y hoja

La función stem() representa un digrama de tallo y hoja. El diagrama de tallo y hoja identifica frecuencias de clases en formato textual.

stem(datos$edades)
## 
##   The decimal point is at the |
## 
##   18 | 0000000000000000000000000000000
##   19 | 00000000000000000000000000
##   20 | 0000000000000000
##   21 | 000000000000000000000000000
##   22 | 0000000000000000000000000
##   23 | 000000000000000000000000
##   24 | 0000000000000000000000000000000
##   25 | 0000000000000000000000000000000000000000
##   26 | 0000000000000000000
##   27 | 000000000000000000000000000000
##   28 | 0000000000000000000000000000000

4.5.5 Grafíca de frecuencia acumulada

Acumulado con tabla2

ggplot() +
  geom_line(aes(x = tabla.frec.edades2$table$`Class limits`, y = tabla.frec.edades2$table$cf))+
  geom_point(aes(x = tabla.frec.edades2$table$`Class limits`, y = tabla.frec.edades2$table$cf)) 
## geom_path: Each group consists of only one observation. Do you need to adjust
## the group aesthetic?

4.5.6 Variable generos

Se utiliza la variable de interés generos del conjunto de datos

tabla.frec.generos <- fdt_cat(datos$generos)
tabla.frec.generos
##   Category   f   rf rf(%)  cf cf(%)
##  MASCULINO 153 0.51    51 153    51
##   FEMENINO 147 0.49    49 300   100

4.5.7 Diagrama o gráfica de barra

ggplot(data = datos) +
  geom_bar(aes(x = generos),col="#DE1889")

5 Interpretación

Esta es mi interpretación:

Los datos recabados son:

  • La frecuencia absoluta de edades nos indica que hay más personas de la edad de 25 a 26 años, teniendo 40 personas (13%), la clase con menor frecuencia es la de 20 a 21 años, con 16 personas (5%).

  • Según la información, hay más personas del género masculino (153), que del femenino (147).

  • Pero en la forma de Sturges, el intervalo con mayor frecuencia fue de [20.958,22.004), y el de menor [19.912,20.958)

  • AL agrupar los datos y clasificarlos dentro de intervalos, nos ayuda a comprender mejor la información que tener los datos no agrupados

  • Se puede decir que si agrupamos datos podemos sacar las frecuencias y así, poder representar con gráficas la información.

  • Se pudo observar que al determinar la cantidad de clases de distintas maneras puede resultar en tablas distintas. Por ejemplo, usando la forma de Sturges, los intervalos son muy distintos a la otra forma, eso a veces puede alterar las frecuencias (en este caso, eso pasa)

  • Aprendí que los histogramas son diferentes a la tabla de barras, la primera sirve para los datos numéricos y la segunda para datos categóricos, el de barras divide en clasificaciones, mientas que el otro va por intervalos de números.