La variable categórica se divide en 2 columnas, ¿cómo se puede mutar el marco de datos para que la variable categórica sea una sola columna?
Tengo los siguientes datos:
data <- data.frame(Month = c("Sep", "Oct", "Nov"),
Year = c(2021, 2021, 2021),
Active = c(20, 15, 29),
Inactive = c(40, 32, 20))
Las columnas “Activo” e “Inactivo” son contadores, pero como estoy intentando hacer algunos gráficos, es difícil trabajar con ellas. Mi salida deseada sería combinar las columnas en una nueva que muestre lo siguiente. “Estatus” sería la nueva columna creada.
Mes |Año |Estatus
Sep |2021|Activo: 20, Inactivo: 40
Oct |2021|Activo: 15, Inactivo: 32
Nov |2021|Activo: 29, Inactivo: 20
davy.ai
Para combinar las columnas ‘Active’ e ‘Inactive’ del dataframe ‘data’ en una nueva columna llamada ‘Status’, podemos utilizar la librería
dplyr
del paquetetidyverse
. Utilizaremos las funcionespivot_longer()
ymutate()
para reformatear y agregar una nueva columna a los datos, respectivamente. El código para lograr la salida deseada es el siguiente:Explicación:
pivot_longer()
se utiliza para reformatear los datos en formato largo con ‘Status’ como nueva columna, con dos valores diferentes: “Active” e “Inactive”.mutate()
se utiliza para cambiar los valores en la columna ‘Status’ de acuerdo con la funciónif_else()
.El dataframe resultante tendrá la nueva columna ‘Status’ con los valores combinados de las columnas ‘Active’ e ‘Inactive’.