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 si ningún orden que no nos establece 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.

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 Frecuencia 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 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
library(ggplot2)  # Visualizar datos

4.2 Crear datos

Sembrar semilla

set.seed(1316)
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      19  FEMENINO
## 2      24 MASCULINO
## 3      26 MASCULINO
## 4      20 MASCULINO
## 5      25  FEMENINO
## 6      20 MASCULINO
## 7      21 MASCULINO
## 8      20  FEMENINO
## 9      26 MASCULINO
## 10     21 MASCULINO

4.4 Mostrar los últimos diez

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

tail(datos, 10)
##     edades   generos
## 291     21  FEMENINO
## 292     22  FEMENINO
## 293     21  FEMENINO
## 294     19  FEMENINO
## 295     26 MASCULINO
## 296     18 MASCULINO
## 297     18 MASCULINO
## 298     27 MASCULINO
## 299     18 MASCULINO
## 300     27  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) 23 0.08  7.67  23   7.67
##  [18.866,19.912) 22 0.07  7.33  45  15.00
##  [19.912,20.958) 32 0.11 10.67  77  25.67
##  [20.958,22.004) 52 0.17 17.33 129  43.00
##   [22.004,23.05) 20 0.07  6.67 149  49.67
##   [23.05,24.096) 28 0.09  9.33 177  59.00
##  [24.096,25.142) 31 0.10 10.33 208  69.33
##  [25.142,26.188) 34 0.11 11.33 242  80.67
##  [26.188,27.234) 29 0.10  9.67 271  90.33
##   [27.234,28.28) 29 0.10  9.67 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) 23 0.08  7.67  23   7.67
##       [19,20) 22 0.07  7.33  45  15.00
##       [20,21) 32 0.11 10.67  77  25.67
##       [21,22) 28 0.09  9.33 105  35.00
##       [22,23) 24 0.08  8.00 129  43.00
##       [23,24) 20 0.07  6.67 149  49.67
##       [24,25) 28 0.09  9.33 177  59.00
##       [25,26) 31 0.10 10.33 208  69.33
##       [26,27) 34 0.11 11.33 242  80.67
##       [27,28) 29 0.10  9.67 271  90.33
##       [28,29) 29 0.10  9.67 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 = "blue", binwidth = 0.5)

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 | 00000000000000000000000
##   19 | 0000000000000000000000
##   20 | 00000000000000000000000000000000
##   21 | 0000000000000000000000000000
##   22 | 000000000000000000000000
##   23 | 00000000000000000000
##   24 | 0000000000000000000000000000
##   25 | 0000000000000000000000000000000
##   26 | 0000000000000000000000000000000000
##   27 | 00000000000000000000000000000
##   28 | 00000000000000000000000000000

4.5.5 Gráfica de frecuencia acumulada

Acumulado con tabla2

# Pendiente
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_line()`: 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 151 0.5 50.33 151  50.33
##   FEMENINO 149 0.5 49.67 300 100.00

4.5.7 Diagrama o gráfica de barra

ggplot(data = datos) +
  geom_bar(aes(x = generos))

5 Interpretación

¿Que sucede si se modifica la semilla set.seed(4 dígitos de su número de control) por ejemplo

set.seed(0734) que es el mio?

Cambian completamente los numeros ya que se generan aleatoriamente depende de la semilla.

Modifiquen la semilla para que cada uno de ustedes tenga diferentes muestras.

Contesten las siguientes preguntas:

  1. Para qué sirve la función set.seed() y la función sample() respectivamente

    set.seed() Sirve para establecer la semilla y generar los numeros.

    sample() Sirve para una darnos elementos aleatorios.

  2. Para qué sirve la función fdth()

    fdth() Para cargar librerias las cuales nos sirven para representaciones graficas.

  3. Al crear la tabla1 con la variable edades de acuerdo a Sturges, ¿cuál es la clase con mayor y menor frecuencia?

    La clase con mayor frecuencia es [20.958,22.004] con 52

    La clase con menor frecuencia es [22.004,23.05] con 20

  4. Al crear la tabla2 con la variable edades ¿cuál es la clase con mayor y menor frecuencia? 

    La clase con mayor frecuencia es [26,27] con 32

    La clase con menor frecuencia es [17,18] con 0

  5. Cuál es la diferencia entre un histograma y un diagrama de barra?.  

    El histograma visualiza frecuencias de variables numéricas (edades) y la gráfica de barra refleja frecuencias de variables categóricas (variable generos que es una cadena de carecteres tipo String).

  6. ¿Qué representa un diagrama de tallo y hoja?, con este diagrama de tallo y  hoja, ¿cuál es el valor numérico de edades con mayor frecuencia y cuál es el valor numérico de la variable edades con menor frecuencia?

    Representa una manera de organizar datos a traves de su valor de lugar para mostrar la distribucion de los datos.

    El valor numerico con mayor frecuencia es el 26.

    El valor numerico con menor frecuencia es el 23.

  7. Con respecto a la variable generos ¿qué hay más hombres o mujeres?, de acuerdo a sus datos. MASCULINO = Hombres, FEMENINO = Mujeres?

    Hay mas hombres.

Además de responder a las preguntas y puntos anteriores, describe un párrafo con tus palabras (4 renglones) de que es lo que deja el caso?

Este caso nos deja que para ver una representacion de una grafica donde utilizamos frecuencias, debemos de agregar la libreria fdth(), tambien nos dice que para agregar un numero aleatorio se utiliza set.speed() o algun dato tambien aleatorio sample(), tambien que tenemos diferentes tipos de graficas las cuales podemos ver los datos que le agregamos, aun que para mi el mas sencillo es un histograma ya que esta estructurado de una manera facil de entender.