Factorizar R: variable categórica y variables continuas

¿Qué es el factor en R?

Factorizar R es una variable utilizada para categorizar y almacenar los datos, teniendo un número limitado de valores diferentes. Almacena los datos como un vector de valores enteros. El factor en R también se conoce como una variable categórica que almacena valores de datos enteros y de cadena como niveles. El factor se utiliza principalmente en modelos estadísticos y análisis de datos exploratorios con R.

En un conjunto de datos podemos distinguir dos tipos de variables: categórico y continuo.

  • En la estadística descriptiva de variables categóricas en R, el valor es limitado y generalmente se basa en un grupo finito particular. Por ejemplo, una variable categórica en R puede ser países, año, género, ocupación.
  • Sin embargo, una variable continua puede tomar cualquier valor, desde entero hasta decimal. Por ejemplo, podemos tener los ingresos, el precio de una acción, etc.

Variables categóricas

Variables categóricas en R se almacenan en un factor. Revisemos el código a continuación para convertir una variable de carácter en una variable de factor en R. Los caracteres no son compatibles con el algoritmo de aprendizaje automático y la única forma es convertir una cadena en un número entero.

Sintaxis

factor(x = character(), levels, labels = levels, ordered = is.ordered(x))

Argumentos:

  • x: Un vector de datos categóricos en R. Debe ser una cadena o un número entero, no decimal.
  • Niveles: Un vector de posibles valores tomados por x. Este argumento es opcional. El valor predeterminado es la lista única de elementos del vector x.
  • Etiquetas: Agregue una etiqueta a los datos categóricos x en R. Por ejemplo, 1 puede tomar la etiqueta "masculino" mientras que 0, la etiqueta "femenino".
  • ordenado: Determinar si los niveles deben ordenarse en datos categóricos en R.

Ejemplo:

Creemos un marco de datos de factores.

# Create gender vector
gender_vector <- c("Male", "Female", "Female", "Male", "Male")
class(gender_vector)
# Convert gender_vector to a factor
factor_gender_vector <-factor(gender_vector)
class(factor_gender_vector)

Salida:

## [1] "character"
## [1] "factor"

Es importante transformar una cadena en variable de factor en R cuando realizamos una tarea de aprendizaje automático.

Una variable categórica en R se puede dividir en variable categórica nominal y variable categórica ordinal.

Variable categórica nominal

Una variable categórica tiene varios valores pero el orden no importa. Por ejemplo, hombre o mujer. Las variables categóricas en R no tienen orden.

# Create a color vector
color_vector <- c('blue', 'red', 'green', 'white', 'black', 'yellow')
# Convert the vector to factor
factor_color <- factor(color_vector)
factor_color

Salida:

## [1] blue   red    green  white  black  yellow
## Levels: black blue green red white yellow

Desde factor_color, no podemos distinguir ningún orden.

Variable categórica ordinal

Las variables categóricas ordinales tienen un orden natural. Podemos especificar el orden, de menor a mayor con orden = VERDADERO y de mayor a menor con orden = FALSO.

Ejemplo:

Podemos usar el resumen para contar los valores de cada variable de factor en R.

# Create Ordinal categorical vector 
day_vector <- c('evening', 'morning', 'afternoon', 'midday', 'midnight', 'evening')
# Convert `day_vector` to a factor with ordered level
factor_day <- factor(day_vector, order = TRUE, levels =c('morning', 'midday', 'afternoon', 'evening', 'midnight'))
# Print the new variable
factor_day

Salida:

## [1] evening   morning   afternoon midday    
midnight  evening

Ejemplo:

## Levels: morning < midday < afternoon < evening < midnight
# Append the line to above code
# Count the number of occurence of each level
summary(factor_day)

Salida:

##   morning    midday afternoon   evening  midnight
##         1         1         1         2         1

R ordenó el nivel desde "mañana" hasta "medianoche" como se especifica en el paréntesis de niveles.

Variables continuas

Las variables de clase continua son el valor predeterminado en R. Se almacenan como números o enteros. Podemos verlo en el conjunto de datos a continuación. mtcars es un conjunto de datos integrado. Recoge información sobre diferentes tipos de coches. Podemos importarlo usando mtcars y verificar la clase de la variable mpg, milla por galón. Devuelve un valor numérico, que indica una variable continua.

dataset <- mtcars
class(dataset$mpg)

Salida

## [1] "numeric"