Distribución de frecuencias para variables cualitativas, cuantitativas discretas y cuantitativas continuas.

Author

Varios

Facultad de Ciencias Matemáticas

E.P.Estadística

Semestre 2023-02

Grupo 1

Integrantes:

  • Porlles Castillo Sharif Snyder

  • Vargas Magallanes Andersson

  • Chuqui Diaz Gianpier Genaro

  • Pilco Valvas Jordan Joel

  • Cusi Ccaihuari Diego Oswaldo

Distribución de frecuencias para variables cualitativas, cuantitativas discretas y cuantitativas continuas.

Distribución de Frecuencias para Variables Cualitativas

Introducción

La distribución de frecuencias es una técnica estadística fundamental para resumir y analizar datos cualitativos. En este contexto, exploraremos cómo aplicar esta técnica a una empresa de exportación de café.

Variable Cualitativa

Consideraremos una variable cualitativa: “País de Destino”. Analizaremos a qué países se exporta café desde nuestra empresa.

Técnica Estadística

Utilizaremos una tabla de distribución de frecuencias para organizar y resumir los datos cualitativos. Seguiremos estos pasos:

  1. Hallar el número total de elementos en el estudio (n).
  2. Establecer las categorías (Xi), que serán los países de destino.
  3. Calcular las frecuencias absolutas (ni).
  4. Determinar las frecuencias absolutas acumuladas (Ni).
  5. Calcular las frecuencias relativas (fi).
  6. Determinar las frecuencias relativas acumuladas (Fi).
  7. Hallar las frecuencias porcentuales.
  8. Calcular las frecuencias porcentuales acumuladas.

Ejemplo Sencillo

Data Recolectada:Supongamos que nuestra empresa exporta café a 15 clientes en diferentes países. A continuación, se presenta una tabla de distribución de frecuencias:

Cliente País de Destino
Cliente_1 EE. UU.
Cliente_2 Canadá
Cliente_3 Alemania
Cliente_4 Francia
Cliente_5 EE. UU.
Cliente_6 Reino Unido
Cliente_7 Alemania
Cliente_8 Canadá
Cliente_9 EE. U.U.
Cliente_10 Otros
Cliente_11 EE. UU.
Cliente_12 Canadá
Cliente_13 Alemania
Cliente_14 Francia
Cliente_15 Reino Unido

Tabla de Distribucion de Frecuencias

Supongamos que nuestra empresa exporta café a 15 clientes en diferentes países. A continuación, se presenta una tabla de distribución de frecuencias corregida:

País de Destino ni (Frecuencia Absoluta) fi (Frecuencia Relativa) Porcentaje
EE. UU. 4 0.267 26.7%
Canadá 3 0.200 20.0%
Alemania 3 0.200 20.0%
Francia 2 0.133 13.3%
Reino Unido 2 0.133 13.3%
Otros 1 0.067 6.7%
datos <- c("EE_UU", "Canadá", "Canadá", "Canadá", "Alemania", "Alemania", "Alemania", "Francia", "Francia", "Reino Unido", "Reino Unido", "Otros", "EE_UU", "EE_UU", "EE_UU")

Tabla_frecuencia <- as.data.frame(table(datos)) 
transform(Tabla_frecuencia, 
          hi=round(prop.table(Tabla_frecuencia$Freq),3))
        datos Freq    hi
1    Alemania    3 0.200
2      Canadá    3 0.200
3       EE_UU    4 0.267
4     Francia    2 0.133
5       Otros    1 0.067
6 Reino Unido    2 0.133

Ejemplo Dataset

Supongamos que tenemos un conjunto de datos con información sobre las Prefrencias de Genero en Ropa:

Antes de hacer el analisis debemos instalar esta libreria:

library(readxl)
Warning: package 'readxl' was built under R version 4.3.2
archivo_1 <- read_xlsx("C:/Users/Anddy/OneDrive/Documentos/5.R-TT/R-Studio/Trabajo de L.P.E/dataset/dataset_R.xlsx")
Pref <- archivo_1$Preferencia_de_Género

  Tabla_frecuencia <- as.data.frame(table(Pref))
  transform(Tabla_frecuencia,
            hi=round(prop.table(Tabla_frecuencia$Freq),3))
              Pref Freq    hi
1  "Ropa Femenina"    9 0.300
2 "Ropa Masculina"    8 0.267
3    "Ropa Unisex"   13 0.433

Variable cuantitativa discreta

Una variable cuantitativa es aquella variable estadística que, a diferencia de la cualitativa, puede expresarse a través de cifras. Por esta razón, puede analizarse con métodos estadísticos.

  • Variables discretas: Son aquellas que toman, solamente, determinados valores y no cualquier valor que se encuentre entre dos de ellos. Por ejemplo, cuando una variable solo puede tomar valores enteros es discreta. Imaginemos el número de carros que posee una persona. Un individuo no puede tener un carro y medio.

Técnica estadística

Para la creación de la tabla de frecuencia debemos tener lo siguiente:

  1. Conocer la cantidad total de elementos del estudio (n).

  2. Conocer cada elemento unico del estudio (Xi).

  3. Hallar la frecuencia absoluta de cada elemento unico (fi).

  4. Hallar la frecuencia absoluta acumulada (Fi).

  5. Hallar la frecuencia relativa (hi), el cual se determina dividiendo la frecuencia absolta de cada elemento con la cantidad total de elementos.

  6. Hallar la frecuencia relativa acumulada (Hi).

Ejemplo

Para este ejemplo crearemos un vector donde esten las edades de ciertas personas.

edad <- c(rep(20, 12), rep(21, 14), rep(22, 15), rep(23, 20), rep(24, 10))

Convertiremos el vector edad en un data frame.

as.data.frame(table(edad))
  edad Freq
1   20   12
2   21   14
3   22   15
4   23   20
5   24   10

Ahora ampliaremos el data frame con la frecuencia absoluta acumulada, frecuencia relativa y frecuencia relativa acumulada.

Tabla_frecuencia <- as.data.frame(table(edad))
transform(Tabla_frecuencia,
          Fi=cumsum(Tabla_frecuencia$Freq),
          hi=round(prop.table(Tabla_frecuencia$Freq),3),
          Hi=round(cumsum(prop.table(Tabla_frecuencia$Freq)), 3))
  edad Freq Fi    hi    Hi
1   20   12 12 0.169 0.169
2   21   14 26 0.197 0.366
3   22   15 41 0.211 0.577
4   23   20 61 0.282 0.859
5   24   10 71 0.141 1.000

Ejemplo dataset

Primero cargamos los datos a trabajar:

ap <- read.csv("C:/Users/Anddy/OneDrive/Documentos/5.R-TT/R-Studio/Trabajo de L.P.E/Dataset/Sales_Product_Details.csv")

Calculamos las frecuencias de las variables y creamos la tabla:

frecuencia3 <- table(ap$Product_ID)
frecuencia3_ordenada <- sort(frecuencia3)
tabla3_frecuencias_df <- data.frame(ID_del_producto = as.numeric(names(frecuencia3_ordenada)), fi = as.numeric(frecuencia3_ordenada))

Calculamos las frecuencias relativas y acumuladas:

frecuencia3_acumulada <- cumsum(frecuencia3_ordenada)
frecuencia3_relativa <- frecuencia3_ordenada / sum(frecuencia3_ordenada)
frecuencia3_relativa_acumulada <- cumsum(frecuencia3_relativa)

Las agregamos a la tabla:

tabla3_frecuencias_df$Fi <- round(frecuencia3_acumulada,3)
tabla3_frecuencias_df$hi <- round(frecuencia3_relativa,3)
tabla3_frecuencias_df$Hi <- round(frecuencia3_relativa_acumulada,3)

Y por ultimo la imprimimos:

print(tabla3_frecuencias_df)
   ID_del_producto fi Fi    hi    Hi
1              258  1  1 0.033 0.033
2              261  1  2 0.033 0.067
3              262  1  3 0.033 0.100
4              263  1  4 0.033 0.133
5              264  1  5 0.033 0.167
6              273  1  6 0.033 0.200
7              274  1  7 0.033 0.233
8              277  1  8 0.033 0.267
9              278  1  9 0.033 0.300
10             280  1 10 0.033 0.333
11             285  1 11 0.033 0.367
12             288  1 12 0.033 0.400
13             293  1 13 0.033 0.433
14             304  1 14 0.033 0.467
15             321  1 15 0.033 0.500
16             336  1 16 0.033 0.533
17             357  1 17 0.033 0.567
18             251  2 19 0.067 0.633
19             265  2 21 0.067 0.700
20             276  2 23 0.067 0.767
21             286  2 25 0.067 0.833
22             291  2 27 0.067 0.900
23             260  3 30 0.100 1.000

Variable cuantitativa continua

Son aquellas que pueden tomar cualquier valor entre dos intervalos o números. Por ejemplo, si necesitas escribir la estatura de un grupo de futbolistas, seguramente, no podrás utilizar los números 1 y 2, pero si las variables 1.80, 1.75, 1.70, porque la altura suele expresarse de esa manera.

Técnica estadística

Para la creación de la tabla de frecuencia debemos tener lo siguiente:

  1. Recolección de datos: El primer paso es recopilar los datos de la variable continua que deseas analizar.
  2. Determinar el rango de los datos (R): Calcula la diferencia entre el valor máximo y el valor mínimo en tu conjunto de datos (R = Xmax - Xmin). Esto te proporcionará una idea del alcance de los valores observados.
  3. Decidir el número de clases (k): Utiliza reglas como la regla de Sturges o la regla de la raíz cuadrada para determinar cuántos intervalos deberías tener.
  4. Calcular la amplitud de clase (A): Divide el rango de los datos por el número de clases para determinar el tamaño de cada intervalo (A = R/k). Asegúrate de redondear hacia arriba para obtener un número entero.
  5. Crear los intervalos (clases): A partir del valor mínimo, define los límites de cada intervalo. Por ejemplo, si el valor mínimo es 20 y la amplitud de clase es 5, los intervalos podrían ser [20-25), [25-30), [30-35), y así sucesivamente.
  6. Contar las frecuencias: Para cada intervalo, cuenta cuántas observaciones caen dentro de ese rango. Esto te dará el número de veces que ocurre cada valor en el intervalo.
  7. Construir la tabla de distribución de frecuencias: Crea una tabla que incluya los intervalos (clases), las frecuencias (número de observaciones en cada intervalo) y, opcionalmente, las frecuencias relativas (porcentaje de observaciones en cada intervalo respecto al total) y acumuladas.

Ejemplo

Paso 1: Para este ejemplo crearemos un vector donde esten las estaturas de 23 personas

estaturas <- c(1.65, 1.70, 1.75, 1.80, 1.85, 1.87, 1.90, 1.73, 1.62, 1.68, 1.69, 1.73, 1.78, 1.83, 1.88, 1.66, 1.89, 1.85, 1.81, 1.60, 1.62, 1.75, 1.80)

Paso 2: Determinamos el rango de los datos (R)

rango_estaturas <- range(estaturas)
rango_estaturas
[1] 1.6 1.9

Paso 3: Determinamos el número de clases (k) con la formula “1+ 3.322*log(n)” donde n = número de observaciones.

ceiling: Se utiliza para redondear un número hacia arriba al entero más cercano.

num_clases_estaturas <- ceiling(log2(length(estaturas)) + 1)
num_clases_estaturas
[1] 6

Paso 4: Hallamos la amplitud de la clase con la formula “A = R/k”

amplitud_clase_estaturas <- (rango_estaturas[2] - rango_estaturas[1]) / num_clases_estaturas

amplitud_clase_estaturas
[1] 0.05

Paso 5: Creamos los intervalos

intervalos_estaturas <- seq(rango_estaturas[1], rango_estaturas[2], by = amplitud_clase_estaturas)

intervalos_estaturas
[1] 1.60 1.65 1.70 1.75 1.80 1.85 1.90

Paso 6: Contamos las frecuencias

frecuencias_estaturas <- table(cut(estaturas, breaks = intervalos_estaturas, include.lowest = TRUE))

frecuencias_estaturas

[1.6,1.65] (1.65,1.7] (1.7,1.75] (1.75,1.8] (1.8,1.85] (1.85,1.9] 
         4          4          4          3          2          6 

Paso 7: Construir la tabla de distribución de frecuencias

Observación:

  • “cumsum” es una función que toma un vector de números y devuelve un nuevo vectordonde cada elemento es la suma acumulativa de los elementos anteriores.
tabla_frecuencias <- data.frame(
  Intervalos = names(frecuencias_estaturas),
  Frecuencia_Absoluta = as.numeric(frecuencias_estaturas),
  Frecuencia_Abs_acumulada = cumsum(as.numeric(frecuencias_estaturas)),
  Frecuencia_Relativa = as.numeric(frecuencias_estaturas) / length(estaturas),
  Frecuencia_Rel_acumuladaa = cumsum(as.numeric(frecuencias_estaturas) / length(estaturas)),
  Porcentaje_Relativo = (as.numeric(frecuencias_estaturas) / length(estaturas)) * 100,
  Porcentaje_Acumulado = (cumsum(as.numeric(frecuencias_estaturas)) / length(estaturas)) * 100
)

tabla_frecuencias
  Intervalos Frecuencia_Absoluta Frecuencia_Abs_acumulada Frecuencia_Relativa
1 [1.6,1.65]                   4                        4          0.17391304
2 (1.65,1.7]                   4                        8          0.17391304
3 (1.7,1.75]                   4                       12          0.17391304
4 (1.75,1.8]                   3                       15          0.13043478
5 (1.8,1.85]                   2                       17          0.08695652
6 (1.85,1.9]                   6                       23          0.26086957
  Frecuencia_Rel_acumuladaa Porcentaje_Relativo Porcentaje_Acumulado
1                 0.1739130           17.391304             17.39130
2                 0.3478261           17.391304             34.78261
3                 0.5217391           17.391304             52.17391
4                 0.6521739           13.043478             65.21739
5                 0.7391304            8.695652             73.91304
6                 1.0000000           26.086957            100.00000

Ejemplo dataset

archivo <- read.csv("C:/Users/Anddy/OneDrive/Documentos/5.R-TT/R-Studio/Trabajo de L.P.E/Dataset/Simple_sales.csv")

x <- archivo$PRICEEACH
n=length(x)
k <- nclass.Sturges(x)
intervalos <- cut(x,breaks = k)
rango <- max(x)-min(x)
a <- rango/k
histograma=hist(x,breaks = seq(min(x), max(x), by=a))

library(agricolae)
Warning: package 'agricolae' was built under R version 4.3.2
Tabla_frecuencias=(table.freq(histograma))
Tabla_frecuencias
      Lower     Upper     Main Frequency Percentage   CF   CPF
1  26.88000  32.50462 29.69231        26        0.9   26   0.9
2  32.50462  38.12923 35.31692        58        2.1   84   3.0
3  38.12923  43.75385 40.94154        74        2.6  158   5.6
4  43.75385  49.37846 46.56615        81        2.9  239   8.5
5  49.37846  55.00308 52.19077       121        4.3  360  12.8
6  55.00308  60.62769 57.81538       126        4.5  486  17.2
7  60.62769  66.25231 63.44000       159        5.6  645  22.8
8  66.25231  71.87692 69.06462       147        5.2  792  28.1
9  71.87692  77.50154 74.68923       159        5.6  951  33.7
10 77.50154  83.12615 80.31385       144        5.1 1095  38.8
11 83.12615  88.75077 85.93846       167        5.9 1262  44.7
12 88.75077  94.37538 91.56308       116        4.1 1378  48.8
13 94.37538 100.00000 97.18769      1445       51.2 2823 100.0

Referencias

NORTE, S. R. P. DISTRIBUCIONES DE FRECUENCIAS DE VARIABLES DISCRETAS.

Limeres, M. C. C. (1992). Estadística Descriptiva.

Alvarado, J. A., Macalopú, H., & Paredes, R. (2005). Estadística descriptiva.

Vargas Pereira, P. (2021). Estadística, distribución de frecuencias y representación gráfica. Primera parte.