R – Cuerdas

Las strings son un montón de variables de caracteres. Es una array unidimensional de caracteres. Uno o más caracteres encerrados en un par de comillas simples o dobles coincidentes se pueden considerar una string en R. Las strings representan contenido textual y pueden contener números, espacios y caracteres especiales. Una string vacía se representa mediante el uso de «. Las strings siempre se almacenan como valores entre comillas dobles en R. Las strings entre comillas dobles pueden contener comillas simples dentro de ellas. Las strings entre comillas simples no pueden contener comillas simples. Del mismo modo, las comillas dobles no pueden estar entre comillas dobles.

Creación de string

Las strings se pueden crear asignando valores de caracteres a una variable. Estas strings se pueden concatenar aún más mediante el uso de varias funciones y métodos para formar una gran string. 

Ejemplo: 

Python3

# R program for String Creation
 
# creating a string with double quotes
str1 <- "OK1"
cat ("String 1 is : ", str1)
 
# creating a string with single quotes
str2 <- 'OK2'
cat ("String 2 is : ", str2)
str3 <- "This is 'acceptable and 'allowed' in R"
cat ("String 3 is : ", str3)
str4 <- 'Hi, Wondering "if this "works"'
cat ("String 4 is : ", str4)
str5 <- 'hi, ' this is not allowed'
cat ("String 5 is : ", str5)

Producción:

String 1 is:  OK1
String 2 is:  OK2
String 3 is:  This is 'acceptable and 'allowed' in R
String 4 is:  Hi, Wondering "if this "works"
Error: unexpected symbol in "        str5 <- 'hi, ' this"
Execution halted

Longitud de la string

La longitud de las strings indica el número de caracteres presentes en la string. La función str_length() que pertenece al paquete ‘string’ o la función incorporada nchar() de R se puede usar para determinar la longitud de las strings en R. 

Ejemplo 1: Usando la función str_length() 

Python3

# R program for finding length of string
 
# Importing package
library(stringr)
 
# Calculating length of string     
str_length("hello")

Producción:

5

Ejemplo 2: Uso de la función nchar() 

Python3

# R program to find length of string
 
# Using nchar() function
nchar("hel'lo")

Producción:

6

Acceso a partes de una string

Los caracteres individuales de una string se pueden extraer de una string utilizando los métodos de indexación de una string. Hay dos funciones incorporadas de R para acceder tanto al carácter único como a las substrings de la string. 

La función substr() o substring() en R extrae substrings de una string que comienza con el índice inicial y termina con el índice final. También reemplaza la substring especificada con un nuevo conjunto de caracteres. 

Sintaxis:

substr(..., start, end)
or 
substring(..., start, end)

Ejemplo 1: Uso de la función substr() 

Python3

# R program to access
# characters in a string
 
# Accessing characters
# using substr() function
substr("Learn Code Tech", 1, 1)

Producción: 

"L"

Si el índice inicial es igual al índice final, se accede al carácter correspondiente de la string. En este caso, se imprime el primer carácter, ‘L’. 

Ejemplo 2: Uso de la función substring() 

Python3

# R program to access characters in string
str <- "Learn Code"
 
# counts the characters in the string
len <- nchar(str)
 
# Accessing character using
#  substring() function
print (substring(str, len, len))
 
# Accessing elements out of index
print (substring(str, len+1, len+1))

Producción: 

[1] "e"

El número de caracteres en la string es 10. La primera declaración de impresión imprime el último carácter de la string, «e», que es str[10]. La segunda declaración de impresión imprime el carácter 11 de la string, que no existe, pero el código no arroja un error e imprime «», que es un carácter vacío. 

El siguiente código R indica el mecanismo de String Slicing , donde se extraen las substrings de una string: 

Python3

# R program to access characters in string
str <- "Learn Code"
 
# counts the number of characters of str = 10
len <- nchar(str)
print(substr(str, 1, 4))
print(substr(str, len-2, len))

Producción:

[1]"Lear"
[1]"ode"

La primera declaración de impresión imprime los primeros cuatro caracteres de la string. La segunda declaración de impresión imprime la substring de los índices 8 a 10, que es «oda».

Conversión de casos

Los caracteres de string se pueden convertir a mayúsculas o minúsculas mediante la función incorporada de R toupper() que convierte todos los caracteres a mayúsculas, tolower() que convierte todos los caracteres a minúsculas y casefold(…, upper=TRUE/FALSE) que convierte sobre la base del valor especificado en el argumento superior. Todas estas funciones también pueden tomar como argumentos múltiples strings. La complejidad temporal de todas las operaciones es O (número de caracteres en la string). 

Ejemplo: 

Python3

# R program to Convert case of a string
str <- "Hi LeArn CodiNG"
print(toupper(str))
print(tolower(str))
print(casefold(str, upper = TRUE))

Producción:

[1] "HI LEARN CODING"
[1] "hi learn coding"
[1] "HI LEARN CODING" 

De forma predeterminada, el valor de la función superior en casefold() se establece en FALSO. Si lo establecemos en TRUE, la string se imprime en mayúsculas.

Actualizando strings

Los caracteres, así como las substrings de una string, se pueden manipular a nuevos valores de string. Los cambios se reflejan en la string original. En R, los valores de string se pueden actualizar de la siguiente manera:

substr (..., start, end) <- newstring
substring (..., start, end) <- newstring

Se pueden actualizar varias strings a la vez, con el inicio <= final.

  • Si la longitud de la substring es mayor que la nueva string, solo se reemplaza la parte de la substring igual a la longitud de la nueva string.
  • Si la longitud de la substring es más pequeña que la nueva string, la posición de la substring se reemplaza con los valores de la nueva string correspondiente.

Publicación traducida automáticamente

Artículo escrito por yippeee25 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *