En este artículo, aprenderemos cómo crear variables categóricas en el lenguaje de programación R.
En estadística, las variables se pueden dividir en dos categorías, es decir, variables categóricas y variables cuantitativas. Las variables que consisten en valores numéricos cuantificables se conocen como variables cuantitativas y una variable categórica es una variable que puede tomar uno de un número limitado y generalmente fijo de valores posibles, asignando cada individuo u otra unidad de observación a un grupo particular. o categoría nominal sobre la base de alguna propiedad cualitativa.
Método 1: Variable categórica desde cero
Para crear una variable categórica desde cero, es decir, dando un valor manual para cada fila de datos, usamos la función factor() y pasamos la columna de datos que se va a convertir en una variable categórica. Esta función factor() convierte la variable cuantitativa en una variable categórica al agrupar los mismos valores.
Sintaxis:
df$categorical_variable <- factor( categorical_vector )
dónde
- df: determina el marco de datos.
- categorical_variable: determina la variable de columna final que contendrá datos categóricos.
- categorical_vector: es el vector que se tiene que convertir.
Ejemplo:
Aquí hay un marco de datos básico donde se agrega un nuevo grupo de columnas como una variable categórica.
R
# create sample data frame df <- data.frame(x=c(10, 23, 13, 41, 15), y=c(71, 17, 28, 32, 12)) # create categorical vector group_vector <- c('A','B','C','D','E') # Add categorical variable to the data frame df$group <- factor(group_vector) # print data frame df
Producción:
x y group 1 10 71 A 2 23 17 B 3 13 28 C 4 41 32 D 5 15 12 E
Método 2: Variable categórica de la columna Existente usando dos valores
Para crear una variable categórica a partir de la columna existente, usamos una declaración if-else dentro de la función factor() y le damos un valor a una columna si cierta condición es verdadera; de lo contrario, le damos otro valor.
Sintaxis:
df$categorical_variable <- as.factor( ifelse(condition, val1, val2) )
dónde
- df: determina el marco de datos.
- categorical_variable: determina la variable de columna final que contendrá datos categóricos.
- condición: determina la condición a verificar, si la condición es verdadera, use val1 de lo contrario val2.
Ejemplo:
Aquí, hay un marco de datos básico donde se agrega un nuevo grupo de columnas como una variable categórica de una condición if-else.
R
# create sample data frame df <- data.frame(x=c(10, 23, 13, 41, 15), y=c(71, 17, 28, 32, 12)) # Add categorical variable to the data frame df$group <- as.factor(ifelse(df$x >20, 'A', 'B')) # print data frame df
Producción:
x y group 1 10 71 B 2 23 17 A 3 13 28 B 4 41 32 A 5 15 12 B
Método 3: Variable categórica de la columna Existente usando múltiples valores
Para crear una variable categórica a partir de la columna existente, usamos varias declaraciones if-else dentro de la función factor() y asignamos un valor a una columna si cierta condición es verdadera, si ninguna de las condiciones es verdadera, usamos el valor else de la última declaración.
Sintaxis:
df$variable_categórica <- as.factor( ifelse(condición, val,ifelse(condición, val,ifelse(condición, val, ifelse(condición, val, vale_else)))))
dónde
- df: determina el marco de datos.
- categorical_variable: determina la variable de columna final que contendrá datos categóricos.
- condition: determina la condición a verificar, si la condición es verdadera, use val.
- val_else: determina el valor si ninguna condición es verdadera.
Ejemplo:
Aquí, hay un marco de datos básico donde se agrega un nuevo grupo de columnas como una variable categórica de múltiples condiciones if-else.
R
# create sample data frame df <- data.frame(x=c(10, 23, 13, 41, 15, 11, 23, 45, 95, 23, 75), y=c(71, 17, 28, 32, 12, 13, 41, 15, 11, 23, 34)) # Add categorical variable to the data frame df$group <- as.factor(ifelse(df$x<20, 'A', ifelse(df$x<30, 'B', ifelse(df$x<50, 'C', ifelse(df$x<90, 'D', 'E'))))) # print data frame df
Producción:
x y group 1 10 71 A 2 23 17 B 3 13 28 A 4 41 32 C 5 15 12 A 6 11 13 A 7 23 41 B 8 45 15 C 9 95 11 E 10 23 23 B 11 75 34 D
Publicación traducida automáticamente
Artículo escrito por mishrapriyank17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA