Las funciones gsub() y sub() de R se pueden combinar fá­ci­l­me­n­te con otras funciones de R para llevar a cabo ma­ni­pu­la­cio­nes complejas de texto. Se utilizan en análisis de datos y cálculos es­ta­dí­s­ti­cos.

¿Para qué se utilizan gsub() y sub() en R?

En R, las funciones gsub() y sub() sirven para sustituir patrones en cadenas de ca­ra­c­te­res. La función sub(), abre­via­tu­ra de “su­b­s­ti­tu­te”, busca y sustituye la primera aparición de un patrón de­te­r­mi­na­do en una cadena por otra expresión. Se trata de una su­s­ti­tu­ción que se realiza una sola vez. En cambio, la función gsub(), que significa “global su­b­s­ti­tu­te”, busca y sustituye todas las apa­ri­cio­nes de un patrón en un string (cadena de ca­ra­c­te­res) por otra expresión.

Ambas funciones son cruciales para la limpieza y tra­n­s­fo­r­ma­ción de datos. Su propósito principal es eliminar patrones no deseados o ajustar datos de texto para su análisis. En R, gsub() y sub() de­sem­pe­ñan un papel crucial en la ma­ni­pu­la­ción de texto para análisis es­ta­dí­s­ti­cos o apli­ca­cio­nes de apre­n­di­za­je au­to­má­ti­co. Puedes utilizar gsub() y sub() para extraer patrones es­pe­cí­fi­cos o tra­n­s­fo­r­mar datos a un formato adecuado para ser analizado.

Esta es la sintaxis de gsub() y sub() en R

La sintaxis de las funciones gsub() y sub() en R es bastante similar, ambos admiten los si­guie­n­tes pa­rá­me­tros:

  • pattern: el patrón a buscar, ya sea en forma de string o expresión regular
  • re­pla­ce­me­nt: la expresión que su­s­ti­tui­rá el patrón en­co­n­tra­do
  • x: vector o marco de datos (data frame) en el cual se realizará la búsqueda y mo­di­fi­ca­ción

Sintaxis de la función gsub() en R

gsub(pattern, replacement, x)
R

Sintaxis de la función sub() de R

sub(pattern, replacement, x)
R

Ejemplos prácticos de gsub() en R

La elección entre sub() o gsub() depende de cuántas veces necesites re­em­pla­zar un patrón. La pa­r­ti­cu­la­ri­dad de gsub() en R es que sustituye todas las veces que aparece un patrón.

Eliminar los espacios en blanco

Puedes utilizar gsub() para eliminar espacios in­ne­ce­sa­rios en strings, como en este ejemplo:

sentence <- "  La ciencia de datos es poderosa.  "
clean_sentence <- gsub("\\s+", " ", sentence)
cat(clean_sentence)
R

Resultado:

"La ciencia de datos es poderosa."
R

La expresión regular \\s+ ide­n­ti­fi­ca uno o más espacios co­n­se­cu­ti­vos y los elimina de la frase.

Sustituir números de teléfono

gsub() en R es útil para ano­ni­mi­zar o eliminar in­fo­r­ma­ción sensible como números de teléfono.

text <- "Contacta con nosotros en el 912-34-56-78 para más información."
modified_text <- gsub("\\d{3}-\\d{3}-\\d{4}", "número de teléfono eliminado", text)
cat(modified_text)
R

Resultado:

"Contacta con nosotros en el número de teléfono eliminado para obtener más información."
R

En este caso, la expresión regular \\d{3}-\\d{3}-\\d{4} ide­n­ti­fi­ca números de teléfono del string text y sustituye todos sus dígitos por el marcador de posición "número de teléfono eliminado".

Ejemplos de uso de sub() en R

Si solo necesitas sustituir la primera aparición de un patrón, utiliza sub().

Sustituir la primera vez que aparece una palabra

Si tienes un string con una palabra repetida y solo quieres cambiar la primera, hazlo así:

text <- "La ciencia de datos es poderosa. El análisis de datos es divertido."
result_sub <- sub("datos", "información", text)
cat(result_sub)
R

Resultado:

"La ciencia de información es poderosa. El análisis de datos es divertido."
R

La función sub() de R busca en el texto el patrón "datos" y lo reemplaza por "información" solamente la primera vez que aparece.

Sustituir números

También puedes utilizar sub() para cambiar números.

numeric_text <- "El coste es de 1000 €. Por favor, paga antes del 01.02.2024."
result <- sub("\\d+", "2000", numeric_text)
cat(result)
R

Resultado:

"El coste es de 2000 €. Por favor, paga antes del 01.02.2024."
R

La expresión regular \\d+ ide­n­ti­fi­ca el primer conjunto de cifras, que sub() cambia por "2000".

Consejo

En nuestra Digital Guide puedes encontrar más ex­pli­ca­cio­nes sobre funciones como R substring o R rbind.

Web Hosting
El hosting que crece con tu proyecto
  • Tiempo de actividad de 99.99 % y seguridad ga­ra­n­ti­za­da
  • Aumenta el re­n­di­mie­n­to según el tráfico de tu página web
  • Incluye dominio, SSL, e-mail y soporte 24/7
Ir al menú principal