Funciones de manipulación de cadenas
Parte de la sección Fundamentos del Journey de R de Coddy — lección 66 de 78.
Ahora que sabes cómo dividir cadenas en caracteres, exploremos algunas funciones esenciales para trabajar con cadenas en R. Estas funciones te ayudan a medir, combinar y transformar datos de texto.
La función nchar() devuelve el número de caracteres en una cadena:
word <- "hello"
print(nchar(word))Salida:
[1] 5Para combinar múltiples cadenas en una sola, utiliza paste(). Por defecto, separa los elementos con un espacio:
result <- paste("Hello", "World")
print(result)Salida:
[1] "Hello World"Usa paste0() cuando no quieras ningún separador entre las cadenas:
result <- paste0("Hello", "World")
print(result)Salida:
[1] "HelloWorld"Para la conversión de mayúsculas y minúsculas, R proporciona toupper() y tolower():
print(toupper("hello"))
print(tolower("WORLD"))Salida:
[1] "HELLO"
[1] "world"Estas funciones se vuelven poderosas cuando se combinan con las técnicas de iteración que has aprendido, permitiéndote procesar y transformar texto carácter por carácter o como cadenas completas.
Desafío
FácilRecibirás dos líneas de entrada:
- Un nombre (por ejemplo,
john) - Un apellido (por ejemplo,
SMITH)
Realiza las siguientes operaciones:
- Convierte el nombre a mayúsculas usando
toupper() - Convierte el apellido a minúsculas usando
tolower() - Combínalos en un nombre completo usando
paste()(con un espacio de por medio) - Calcula el número total de caracteres en el nombre completo (incluyendo el espacio) usando
nchar() - Crea un nombre de usuario combinando el nombre y el apellido sin separador usando
paste0(), todo en minúsculas - Imprime el nombre completo
- Imprime el recuento de caracteres
- Imprime el nombre de usuario
Por ejemplo, si las entradas son:
alice
WONDERLa salida debería ser:
[1] "ALICE wonder"
[1] 12
[1] "alicewonder"Explicación: El nombre "alice" se convierte en "ALICE" (mayúsculas), el apellido "WONDER" se convierte en "wonder" (minúsculas). El nombre completo "ALICE wonder" tiene 12 caracteres (incluyendo el espacio). El nombre de usuario combina ambos nombres en minúsculas sin separador: "alicewonder".
Hoja de referencia
La función nchar() devuelve el número de caracteres de una cadena:
word <- "hello"
print(nchar(word)) # Salida: [1] 5La función paste() combina varias cadenas con un espacio como separador por defecto:
result <- paste("Hello", "World")
print(result) # Salida: [1] "Hello World"La función paste0() combina cadenas sin separador:
result <- paste0("Hello", "World")
print(result) # Salida: [1] "HelloWorld"La función toupper() convierte cadenas a mayúsculas, y tolower() las convierte a minúsculas:
print(toupper("hello")) # Salida: [1] "HELLO"
print(tolower("WORLD")) # Salida: [1] "world"Pruébalo tú mismo
# Leer entrada
con <- file("stdin", "r")
first_name <- suppressWarnings(readLines(con, n = 1))
last_name <- suppressWarnings(readLines(con, n = 1))
close(con)
# TODO: Escribe tu código a continuación
# 1. Convierte first_name a mayúsculas usando toupper()
# 2. Convierte last_name a minúsculas usando tolower()
# 3. Combínalos en full_name usando paste()
# 4. Calcula el recuento de caracteres usando nchar()
# 5. Crea username usando paste0() (todo en minúsculas)
# Imprimir los resultados
print(full_name)
print(char_count)
print(username)Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores lógicos (AND, OR)Operadores lógicos Parte 2 (NOT)Resumen - Lógica simpleLógica vectorizada Parte 1Lógica vectorizada Parte 27Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada del usuario2Variables y tipos de datos
Tipo de dato numéricoTipo de dato enteroTipo de dato de caracteresTipo de dato lógicoComprobación de tipos de datosConvenciones de nomenclaturaValores faltantes: NAResumen - Creación de variables8Bucles
Bucle ForBucle WhileBreakNext (Continue)Repaso - FactorialGeneración de secuencias (seq, :)Bucles anidadosRepaso - Entrada dinámica3Operadores Parte 1
Operadores aritméticosDivisión entera y móduloOperadores de asignaciónRepaso - Matemáticas simplesOperadores de comparación6E/S básica
Imprimir salidaCat para salidaSalida con variablesLectura de entrada con readline()Conceptos básicos de conversión de tiposResumen - Calculadora de edadResumen - Verdadero o falso9Funciones
Declarar una funciónArgumentos de una funciónValores de retornoRepaso - Función SigmaRepaso - Función de validaciónValores de parámetros por defecto12Iterar sobre secuencias
Iterar sobre elementos de un vectorUso de seq_along()Iterar sobre caracteres (strsplit)Funciones de manipulación de cadenas