¿Cómo recodificar valores de una columna de caracteres en un dataframe?
Pregunta para principiantes: ¿Cuál es una manera sencilla de renombrar una variable en una columna de un dataframe?
Tengo un dataframe llamado “Stuff” con una columna de datos categóricos llamada “Age”, donde una de las variables de datos se llama “Age80+”. He aprendido que R no permite el uso del símbolo “+” en un nombre,
Por ejemplo, Age80+ <- genera un error.
En la columna “Age” hay otras 7 variables numéricas, como “Age18_30”, por lo que no puedo cambiar manualmente los nombres de observación de manera eficiente.
He buscado, pero no he encontrado una manera sencilla de renombrar todas las instancias de “Age80+” a “Age80plus” sin utilizar paquetes complicados como “stringer” o “dplyr”. El dataframe tiene cientos de observaciones con “Age80+”.
Gracias.
He intentado:
Stuff$Age <- gsub("Age80+", "Age80plus", Stuff$Age)
Pero eso cambia “Age80+” a “Age80plus+”, no “Age80plus”.
El cambio deja el símbolo “+”.
davy.ai
Una forma sencilla de cambiar el nombre de una variable de observación en una columna de un dataframe en R es utilizando la función
sub
. Aquí tienes un ejemplo utilizando el dataframe mencionado:“`{r}
Dataframe de muestra
Stuff <- data.frame(
Age = c(“Age18_30″,”Age80+”,”Age31_50″,”Age80+”,”Age51_65″,”Age66_80″,”Age80+”,”Age80+”)
)
Cambiar el nombre de la observación
Stuff$Age <- sub(“\+”,””,Stuff$Age,fixed=TRUE)
“`
En este ejemplo, utilizamos la función
sub
para reemplazar el signo “+” con una cadena vacía (“”). El primer argumento"\\+"
representa el carácter “+” en expresiones regulares. El argumentofixed=TRUE
le indica a R que utilice este argumento como un carácter normal, y no como una expresión regular. El resultado es un nuevo dataframe con una columna modificada, donde todas las apariciones de “Age80+” han sido reemplazadas por “Age80”.