R - Cuerdas

Cualquier valor escrito dentro de un par de comillas simples o dobles en R se trata como una cadena. Internamente, R almacena cada cadena entre comillas dobles, incluso cuando las crea con comillas simples.

Reglas aplicadas en la construcción de cadenas

  • Las comillas al principio y al final de una cadena deben ser comillas dobles o comillas simples. No se pueden mezclar.

  • Se pueden insertar comillas dobles en una cadena que comience y termine con comillas simples.

  • Se pueden insertar comillas simples en una cadena que comience y termine con comillas dobles.

  • No se pueden insertar comillas dobles en una cadena que comience y termine con comillas dobles.

  • Las comillas simples no se pueden insertar en una cadena que comience y termine con comillas simples.

Ejemplos de cadenas válidas

Los siguientes ejemplos aclaran las reglas sobre la creación de una cadena en R.

a <- 'Start and end with single quote'
print(a)

b <- "Start and end with double quotes"
print(b)

c <- "single quote ' in between double quotes"
print(c)

d <- 'Double quotes " in between single quote'
print(d)

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado:

[1] "Start and end with single quote"
[1] "Start and end with double quotes"
[1] "single quote ' in between double quote"
[1] "Double quote \" in between single quote"

Ejemplos de cadenas no válidas

e <- 'Mixed quotes" 
print(e)

f <- 'Single quote ' inside single quote'
print(f)

g <- "Double quotes " inside double quotes"
print(g)

Cuando ejecutamos el script, falla dando los siguientes resultados.

Error: unexpected symbol in:
"print(e)
f <- 'Single"
Execution halted

Manipulación de cuerdas

Concatenación de cadenas - función paste ()

Muchas cadenas en R se combinan usando el paste()función. Pueden ser necesarios varios argumentos para combinarlos.

Sintaxis

La sintaxis básica para la función de pegar es:

paste(..., sep = " ", collapse = NULL)

A continuación se muestra la descripción de los parámetros utilizados:

  • ... representa cualquier número de argumentos a combinar.

  • seprepresenta cualquier separador entre los argumentos. Es opcional.

  • collapsese utiliza para eliminar el espacio entre dos cadenas. Pero no el espacio entre dos palabras de una cadena.

Ejemplo

a <- "Hello"
b <- 'How'
c <- "are you? "

print(paste(a,b,c))

print(paste(a,b,c, sep = "-"))

print(paste(a,b,c, sep = "", collapse = ""))

Cuando ejecutamos el código anterior, produce el siguiente resultado:

[1] "Hello How are you? "
[1] "Hello-How-are you? "
[1] "HelloHoware you? "

Formateo de números y cadenas - función format ()

Los números y las cadenas se pueden formatear a un estilo específico usando format() función.

Sintaxis

La sintaxis básica para la función de formato es:

format(x, digits, nsmall, scientific, width, justify = c("left", "right", "centre", "none"))

A continuación se muestra la descripción de los parámetros utilizados:

  • x es la entrada del vector.

  • digits es el número total de dígitos mostrados.

  • nsmall es el número mínimo de dígitos a la derecha del punto decimal.

  • scientific se establece en TRUE para mostrar la notación científica.

  • width indica el ancho mínimo que se mostrará rellenando espacios en blanco al principio.

  • justify es la visualización de la cadena a la izquierda, derecha o centro.

Ejemplo

# Total number of digits displayed. Last digit rounded off.
result <- format(23.123456789, digits = 9)
print(result)

# Display numbers in scientific notation.
result <- format(c(6, 13.14521), scientific = TRUE)
print(result)

# The minimum number of digits to the right of the decimal point.
result <- format(23.47, nsmall = 5)
print(result)

# Format treats everything as a string.
result <- format(6)
print(result)

# Numbers are padded with blank in the beginning for width.
result <- format(13.7, width = 6)
print(result)

# Left justify strings.
result <- format("Hello", width = 8, justify = "l")
print(result)

# Justfy string with center.
result <- format("Hello", width = 8, justify = "c")
print(result)

Cuando ejecutamos el código anterior, produce el siguiente resultado:

[1] "23.1234568"
[1] "6.000000e+00" "1.314521e+01"
[1] "23.47000"
[1] "6"
[1] "  13.7"
[1] "Hello   "
[1] " Hello  "

Contando el número de caracteres en una cadena - función nchar ()

Esta función cuenta el número de caracteres incluidos los espacios en una cadena.

Sintaxis

La sintaxis básica de la función nchar () es:

nchar(x)

A continuación se muestra la descripción de los parámetros utilizados:

  • x es la entrada del vector.

Ejemplo

result <- nchar("Count the number of characters")
print(result)

Cuando ejecutamos el código anterior, produce el siguiente resultado:

[1] 30

Cambiar el caso: funciones toupper () y tolower ()

Estas funciones cambian el caso de los caracteres de una cadena.

Sintaxis

La sintaxis básica para la función toupper () y tolower () es -

toupper(x)
tolower(x)

A continuación se muestra la descripción de los parámetros utilizados:

  • x es la entrada del vector.

Ejemplo

# Changing to Upper case.
result <- toupper("Changing To Upper")
print(result)

# Changing to lower case.
result <- tolower("Changing To Lower")
print(result)

Cuando ejecutamos el código anterior, produce el siguiente resultado:

[1] "CHANGING TO UPPER"
[1] "changing to lower"

Extraer partes de una cadena - función substring ()

Esta función extrae partes de una cadena.

Sintaxis

La sintaxis básica de la función substring () es:

substring(x,first,last)

A continuación se muestra la descripción de los parámetros utilizados:

  • x es la entrada del vector de caracteres.

  • first es la posición del primer carácter que se va a extraer.

  • last es la posición del último carácter que se va a extraer.

Ejemplo

# Extract characters from 5th to 7th position.
result <- substring("Extract", 5, 7)
print(result)

Cuando ejecutamos el código anterior, produce el siguiente resultado:

[1] "act"