Ampliar tabla de contingencia con proporciones y porcentajes en R

La tabla de datos en el lenguaje de programación R se puede usar para almacenar diferentes celdas que contienen valores, cada uno de los cuales pertenece a un conjunto similar de grupos o grupos mutuamente excluyentes. Los recuentos de las variables con sus grupos se pueden calcular utilizando métodos básicos y paquetes externos en R.

Crear tabla de contingencia o frecuencia en R

El método table() en R se utiliza para calcular los recuentos de frecuencia de las variables que aparecen en la columna especificada del marco de datos. El resultado se devuelve en forma de estructura tabular de dos filas, donde la primera fila indica el valor de la columna y la siguiente indica sus frecuencias correspondientes. La función table() también es útil para crear tablas de frecuencia con condiciones y tabulaciones cruzadas. La tabla de frecuencia también se conoce como tabla de contingencia en R. El método table() se aplica sobre el objeto data.table y las combinaciones únicas de valores de las columnas especificadas se devuelven junto con sus respectivos recuentos de frecuencia. 

Sintaxis:

tabla (x), 

Donde x es el objeto data.table

En caso de que x sea un marco de datos, la tabla de frecuencia se puede construir utilizando el siguiente método.

Sintaxis:

tabla (marco_datos$nombre-col)

Ejemplo:

R

library("data.table")
  
set.seed(1)  
  
# creating a data frame
data_table <- data.table(col1 =  sample(letters[1:3], 8, replace = TRUE) ,
                         col2 = sample(1:6, 8, replace = TRUE)
                        )
  
print ("Original DataFrame")
print (data_table)
  
# calculating frequency
freq <- table(data_table$col1)
print ("Frequency")
print (freq)

Producción

[1] "Original DataFrame" 
col1 col2 
1:    a    2 
2:    c    3 
3:    a    3 
4:    b    1 
5:    a    5 
6:    c    5 
7:    c    2 
8:    b    6 
[1] "Frequency"
a b c  
3 2 3 

 Crear proporciones de la tabla de frecuencia

La frecuencia relativa, también conocida como distribución de probabilidad, es la frecuencia del valor correspondiente dividida por el número total de elementos. Esto se puede calcular mediante el método prop.table() aplicado sobre la tabla de frecuencia obtenida del enfoque anterior. Se refiere a proporciones, ya que devuelve la proporción de cada componente entre el número total de componentes. 

Sintaxis:

prop.table(tabla-frq)

frq-table / observaciones totales

La sintaxis adecuada para calcular la tabla de proporciones es la siguiente: 

prop.table (table(df$col-name))

Ejemplo:

R

library("data.table")
  
set.seed(1)  
  
# creating a data frame
data_table <- data.table(col1 =  sample(letters[1:3], 8, replace = TRUE) ,
                         col2 = sample(1:6, 8, replace = TRUE)
                        )
  
print ("Original DataFrame")
print (data_table)
  
# calculating frequency
freq <- table(data_table$col1)
  
# creating proportions 
prop <- prop.table(freq)
print ("Proportions of column1")
print (prop)

Producción

[1] "Original DataFrame"  
col1 col2
1:    a    2
2:    c    3
3:    a    3
4:    b    1
5:    a    5
6:    c    5
7:    c    2
8:    b    6
[1] "Proportions of column1"
a     b     c  
0.375 0.250 0.375

Creación de porcentajes de la tabla de frecuencia

Los porcentajes se pueden calcular multiplicando cada uno de los elementos de celda correspondientes de la tabla de probabilidad por 100. El resultado se puede redondear a cualquier número de dígitos usando el método round() para una mejor legibilidad. 

Sintaxis:

redondo (num, dígitos)

La tabla de proporciones se puede redondear para calcular porcentajes multiplicando cada valor de celda por 100. El resultado es la tabla de datos o el vector en el mismo formato que la entrada. 

Ejemplo:

R

library("data.table")
set.seed(1)  
  
# creating a data frame
data_table <- data.table(col1 =  sample(letters[1:3], 8, replace = TRUE) ,
                         col2 = sample(1:6, 8, replace = TRUE)
                        )
  
print ("Original DataFrame")
print (data_table)
  
# calculating frequency
freq <- table(data_table$col1)
  
# creating proportions 
prop <- prop.table(freq)
  
print ("Percentage of column1")
perc <- round((prop * 100),2)
print (perc)

Producción

[1] "Original DataFrame"  
col1 col2 
1:    a    2 
2:    c    3 
3:    a    3 
4:    b    1 
5:    a    5 
6:    c    5 
7:    c    2 
8:    b    6 
[1] "Percentage of column1"  
a    b    c  
37.5 25.0 37.5 

Cálculo de frecuencias, proporciones y porcentajes usando columnas múltiples

El método table() se puede usar para especificar múltiples argumentos de columna, donde las combinaciones únicas se calculan junto con sus respectivos recuentos.

Ejemplo:

R

library("data.table")
set.seed(1)  
  
# creating a data frame
data_table <- data.table(col1 =  sample(letters[1:3], 8, replace = TRUE) ,
                         col2 =  sample(1:2, 8, replace = TRUE)
                        )
  
print ("Original DataFrame")
print (data_table)
  
# calculating frequency
freq <- table(data_table$col1,data_table$col2)
  
# creating proportions 
prop <- prop.table(freq)
print ("Proportions of column1")
print (prop)
  
print ("Percentage of column1")
perc <- round((prop * 100),2)
print (perc)

Producción

[1] "Original DataFrame" 
   col1 col2 
1:    a    2 
2:    c    1 
3:    a    1 
4:    b    1 
5:    a    1 
6:    c    1 
7:    c    2 
8:    b    2 
[1] "Proportions of column1" 
      1     2   
a 0.250 0.125   
b 0.125 0.125   
c 0.250 0.125
[1] "Percentage of column1" 
     1    2   
a 25.0 12.5   
b 12.5 12.5   
c 25.0 12.5

Publicación traducida automáticamente

Artículo escrito por yashkumar0457 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *