Variables ficticias en la programación R

La programación R es uno de los lenguajes más utilizados para la minería de datos y la visualización de los datos. Usando este lenguaje, se puede procesar cualquier tipo de algoritmo de aprendizaje automático como regresión, clasificación, etc. La codificación ficticia se usa en el análisis de regresión para categorizar la variable. variable ficticiaen programación R es un tipo de variable que representa una característica de un experimento. Una variable ficticia es 1 o 0 y 1 se puede representar como Verdadero o Falso y 0 se puede representar como Falso o Verdadero según el usuario. Esta variable se utiliza para categorizar la característica de una observación. Por ejemplo, una persona es hombre o mujer, la disciplina es buena o mala, etc. Además, se crearán nuevas columnas en consecuencia que especificarán si la persona es hombre o no como el valor binario de gender_m y si la persona es mujer. o no como el valor binario de gender_f.
Marco de datos original:
variables ficticias
después de crear una variable ficticia:
variables ficticias

En este artículo, discutamos cómo crear variables ficticias en R usando 2 métodos, es decir, ifelse()el método y otro usando dummy_cols()la función.

Usando ifelse()la función

ifelse()La función realiza una prueba y, en función del resultado de la prueba, devuelve un valor verdadero o un valor falso según lo dispuesto en los parámetros de la función. Usando esta función, la variable ficticia se puede crear en consecuencia.

Sintaxis:
ifelse(prueba, sí, no)

Parámetros:
prueba: representa la condición de prueba
sí: representa el valor que se ejecutará si se cumple la condición de prueba
no: representa el valor que se ejecutará si no se cumple la condición de prueba

Ejemplo 1:

# Using PlantGrowth dataset
pg <- PlantGrowth
  
# Print
cat("Original dataset:\n")
head(pg, 20)
  
# Create dummy variable
pg$group_ctr1 <- ifelse(pg$group == "ctrl", 1, 0)
  
# Print
cat("After creating dummy variable:\n")
head(pg, 20)

Producción:

Original dataset:
   weight group
1    4.17  ctrl
2    5.58  ctrl
3    5.18  ctrl
4    6.11  ctrl
5    4.50  ctrl
6    4.61  ctrl
7    5.17  ctrl
8    4.53  ctrl
9    5.33  ctrl
10   5.14  ctrl
11   4.81  trt1
12   4.17  trt1
13   4.41  trt1
14   3.59  trt1
15   5.87  trt1
16   3.83  trt1
17   6.03  trt1
18   4.89  trt1
19   4.32  trt1
20   4.69  trt1

After creating dummy variable:
   weight group group_ctr1
1    4.17  ctrl          1
2    5.58  ctrl          1
3    5.18  ctrl          1
4    6.11  ctrl          1
5    4.50  ctrl          1
6    4.61  ctrl          1
7    5.17  ctrl          1
8    4.53  ctrl          1
9    5.33  ctrl          1
10   5.14  ctrl          1
11   4.81  trt1          0
12   4.17  trt1          0
13   4.41  trt1          0
14   3.59  trt1          0
15   5.87  trt1          0
16   3.83  trt1          0
17   6.03  trt1          0
18   4.89  trt1          0
19   4.32  trt1          0
20   4.69  trt1          0

Ejemplo 2:

# Create a dataframe
df <- data.frame(gender = c("m", "f", "m"),
                 age = c(19, 20, 20),
                 city = c("Delhi", "Mumbai", 
                                   "Delhi"))
  
# Print original dataset
print(df)
  
# Create dummy variable
df$gender_m <- ifelse(df$gender == "m", 1, 0)
df$gender_f <- ifelse(df$gender == "f", 1, 0)
  
# Print resultant
print(df)

Producción:

  gender age   city
1      m  19  Delhi
2      f  20 Mumbai
3      m  20  Delhi

  gender age   city gender_m gender_f
1      m  19  Delhi        1        0
2      f  20 Mumbai        0        1
3      m  20  Delhi        1        0

Usando dummy_cols()la función

dummy_cols()La función está presente en el fastDummiespaquete. Crea variables ficticias sobre la base de los parámetros proporcionados en la función. Si no se seleccionan columnas en la llamada de función para las que se debe crear una variable ficticia, entonces se crean variables ficticias para todas las columnas de caracteres y factores en el marco de datos.

Sintaxis:
dummy_cols(.data, select_columns = NULL)

Parámetros:
.data: representa el objeto para el que se deben crear columnas ficticias
select_columns: representa las columnas para las que se deben crear variables ficticias

Ejemplo 1:

# Install the required package
install.packages("fastDummies")
  
# Load the library
library(fastDummies)
  
# Using PlantGrowth dataset
data <- PlantGrowth
  
# Create dummy variable
data <- dummy_cols(data, 
                   select_columns = "group")
  
# Print
print(data)

Producción:

   weight group group_ctrl group_trt1 group_trt2
1    4.17  ctrl          1          0          0
2    5.58  ctrl          1          0          0
3    5.18  ctrl          1          0          0
4    6.11  ctrl          1          0          0
5    4.50  ctrl          1          0          0
6    4.61  ctrl          1          0          0
7    5.17  ctrl          1          0          0
8    4.53  ctrl          1          0          0
9    5.33  ctrl          1          0          0
10   5.14  ctrl          1          0          0
11   4.81  trt1          0          1          0
12   4.17  trt1          0          1          0
13   4.41  trt1          0          1          0
14   3.59  trt1          0          1          0
15   5.87  trt1          0          1          0
16   3.83  trt1          0          1          0
17   6.03  trt1          0          1          0
18   4.89  trt1          0          1          0
19   4.32  trt1          0          1          0
20   4.69  trt1          0          1          0
21   6.31  trt2          0          0          1
22   5.12  trt2          0          0          1
23   5.54  trt2          0          0          1
24   5.50  trt2          0          0          1
25   5.37  trt2          0          0          1
26   5.29  trt2          0          0          1
27   4.92  trt2          0          0          1
28   6.15  trt2          0          0          1
29   5.80  trt2          0          0          1
30   5.26  trt2          0          0          1

Ejemplo 2:

# Create a dataframe
df <- data.frame(gender = c("m", "f", "m"),
                 age = c(19, 20, 20),
                 city = c("Delhi", "Mumbai", 
                                  "Delhi"))
  
# Create dummy variables
# select_columns = NULL uses all 
# character and factor columns
# to create dummy variable
df <- dummy_cols(df)
  
# Print
print(df)

Producción:

  gender age   city gender_f gender_m city_Delhi city_Mumbai
1      m  19  Delhi        0        1          1           0
2      f  20 Mumbai        1        0          0           1
3      m  20  Delhi        0        1          1           0

Publicación traducida automáticamente

Artículo escrito por utkarsh_kumar 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 *