Convertir objetos a carácter con as.character()

Introducción a R Conceptos básicos de R
La función as.character() en R

La función as.character convierte objetos de R en tipo carácter. En este tutorial revisaremos cómo transformar vectores a carácter y a comprobar si un objeto es carácter o no.

Sintaxis y argumentos

La sintaxis de la función as.character es la siguiente:

as.character(x,   # Objeto a ser transformado a carácter
             ...) # Argumentos adicionales, en caso de ser necesario

La función toma como argumento un objeto (x) para ser transformado a carácter.

Uso

Puedes convertir números, vectores u otros objetos de R a carácter con la función. Considera, por ejemplo, el siguiente vector numérico:

x_numerico <- c(10, 156, -5, log(10)) 
x_numerico # 10.000000 156.000000  -5.000000   2.302585

Este vector se puede transformar a carácter con la función as.character de la siguiente manera:

x_caracter <- as.character(x_numerico)
x_caracter # "10"  "156" "-5" "2.30258509299405"

Ten en cuenta que los números están entre comillas y que el número de decimales ahora es diferente. Si necesitas transformarlo al vector original tendrás que usar la función as.numeric.

Ahora, considera que tienes una fecha de clase Date y que quieres transformarla a carácter:

date <- as.POSIXct.Date(Sys.time())
date # "4654923-09-09 10:13:13 UTC"

También puedes transformarlo a carácter con la función as.character:

as.character(date) # "4654923-09-09 10:13:13.625"

Comprobar si un objeto es de tipo carácter con is.character

Si no tienes claro si tu objeto es de tipo carácter o no, puedes usar la función is.character para comprobarlo. Esta función devolverá TRUE si el objeto es carácter y FALSE en otro caso, tal y como se muestra en los ejemplos siguientes.

is.character(3)          # FALSE
is.character("R CODER")  # TRUE
is.character(Sys.Date()) # FALSE
is.character(pi)         # FALSE

Crear un vector vacío de una longitud determinada con character

La última función que vamos a revisar es la función character, que toma un entero no negativo como entrada para especificar la longitud deseada del vector. Esta función es útil, por ejemplo, para preasignar espacio y rellenar un vector de caracteres de cualquier longitud dentro de un bucle.

character()  # character(0)
character(3) # "" "" ""

R version 4.3.2 (2023-10-31 ucrt)