La presente tarea tiene una sección teórica y una sección práctica.
La entrega se realizará a través de un documento de RMarkdown publicado en RPUbs (se entregará el enlace en un correo a mi con copia a la laboratorista).
En caso de algún error en el código de la tarea, publique el error en Piazza o contacte a su instructor para ver como proceder.
Aquellos que no han podido publicar sus tareas antes pueden entregar la tarea de la misma manera en que lo han estado haciendo antes.
stringr?#Brinda un conjunto de funciones consistentes para manejar y transformar cadenas de texto
#Son secuencias de caracteres para definir un patrón de búsqueda
rebus?#Nos da la facilidad de construir expresiones regulares de manera más intuitiva, mientras vamos aprendiendo a trabajar con las expresiones regulares tradicionales.
str_view() y str_view_all()? ¿Cuál es la diferencia entre ambas?#Ambas permiten probar nuestros intentos de expresiones regulares, para atrapar lo que queremos atrapar. La diferencia entre ambas es que str_view muestra el primer patrón, mientras que str_view_all muestra todos los patrones.
str_detect() y str_detect_all()? ¿Cuál es la diferencia entre ambas?#str_detect detecta la presencia o ausencia strings que incluyen un patrón y en este caso detecta el primer patrón. str_detect_all detecta todos los strings que incluyen un patrón.
str_replace() y str_replace_all()? ¿Cuál es la diferencia entre ambas?#str_replace reemplaza patrones de cadenas de texto, en este caso reemplaza la primera que detecta. str_replace_all reemplaza todas los patrones de cadenas de texto.
str_remove() y str_remove_all()? ¿Cuál es la diferencia entre ambas?#sirve para eliminar patrones coincidentes en una cadena de texto, en este caso elimina el primero, por lo que str_remove_all remueve todos esos patrones.
str_extract() y str_extract_all()? ¿Cuál es la diferencia entre ambas?#para extraer patrones de cadena de texto, en este caso extrae el primero que encuentra, por lo que el str_extract_all extrae todos los que encuentra en la cadena de texto.
# Librerias
library(pdftools) # Si no tienes esta libreria, instálala.
library(tidyverse)
library(rebus)
library(htmltools)
numeros, limpie los datos de tal forma que todos los numeros tengan el mismo formato. Para esto, utilice expresiones regulares y funciones de stringr.(Sugerencia: El formato puede ser el que usted defina, pero el mas facil es que sean solo los numeros, sin símbolos raros).
numeros <- c("(595)107-3344",
"(890)-123-4465",
"999 107 5243",
"999_989-0756")
pat <- or1(c(PUNCT, SPC))
str_view_all(string = numeros,
pattern = pat)
str_remove_all(string = numeros,
pattern = pat)
## [1] "5951073344" "8901234465" "9991075243" "9999890756"
roma <- pdf_text("Roma-Screenplay-SPANISH.pdf")
roma_escena <- roma[135]
roma_escena
## [1] " mm/dd/yy (White) 133.\nCONTINUED: (6)\nLa Señora Sofía la abraza con fuerza -\n SEÑORA SOFÍA\n Gracias… gracias… gracias, Cleo…\nPero Cleo no para de llorar -\n CLEO\n No la quería… No la quería…\nLa Señora Sofía intenta calmarla -\n SEÑORA SOFÍA\n Shh, shh, shh… Están bien… Los\n niños están bien…\nPero Cleo insiste entre llanto y mocos -\n CLEO\n No la quería… No quería que\n naciera…\nY se quiebra aún más -\n CLEO (CONT’D)\n … ¡Pobrecita!… ¡No quería que\n naciera!… ¡No quería que naciera!…\nLa Señora Sofía la abraza más fuerte y también llora -\n SEÑORA SOFÍA\n Todo va a estar bien, Cleo… Todo\n va a estar bien…\nLas dos mujeres lloran abrazadas. Es un llanto\ncompartido, con sollozos como arcadas, y largos silencios\nque explotan en prolongadas vocales.\nLos niños se enlazan alrededor de las mujeres,\nabrazándolas. Sólo Toño los mira de pie.\nLos curiosos se disipan. El jinete jala la riendas y el\ncaballo sigue su camino por la playa.\nEl mar enfurecido con sus inquietas olas refleja los\núltimos destellos del día.\n28 de junio de 1971, lunes\n"
\n) en el objeto roma_escena.pat <- "`n`"
str_view_all(string = roma_escena,
pattern = pat)
stringr sustituya todos los quiebres de página de roma_escena por espacios en blanco.str_replace_all(string = roma_escena,
pattern = pat,
replacement = " ")
## [1] " mm/dd/yy (White) 133.\nCONTINUED: (6)\nLa Señora Sofía la abraza con fuerza -\n SEÑORA SOFÍA\n Gracias… gracias… gracias, Cleo…\nPero Cleo no para de llorar -\n CLEO\n No la quería… No la quería…\nLa Señora Sofía intenta calmarla -\n SEÑORA SOFÍA\n Shh, shh, shh… Están bien… Los\n niños están bien…\nPero Cleo insiste entre llanto y mocos -\n CLEO\n No la quería… No quería que\n naciera…\nY se quiebra aún más -\n CLEO (CONT’D)\n … ¡Pobrecita!… ¡No quería que\n naciera!… ¡No quería que naciera!…\nLa Señora Sofía la abraza más fuerte y también llora -\n SEÑORA SOFÍA\n Todo va a estar bien, Cleo… Todo\n va a estar bien…\nLas dos mujeres lloran abrazadas. Es un llanto\ncompartido, con sollozos como arcadas, y largos silencios\nque explotan en prolongadas vocales.\nLos niños se enlazan alrededor de las mujeres,\nabrazándolas. Sólo Toño los mira de pie.\nLos curiosos se disipan. El jinete jala la riendas y el\ncaballo sigue su camino por la playa.\nEl mar enfurecido con sus inquietas olas refleja los\núltimos destellos del día.\n28 de junio de 1971, lunes\n"
roma_escena tiene espacios anormalmente grandes. Genere una expresión regular que capture todos los espacios mas grandes de lo normal (mas de un espacio normal).pat <- repeated(SPC, lo = 2, hi = Inf)
str_view_all(string = roma_escena,
pattern = pat)
stringr, sustituya todos los espacios anormalmente grandes de roma_escena por espacios normales.str_replace_all(string = roma_escena,
pattern = pat,
replacement = " ")
## [1] " mm/dd/yy (White) 133.\nCONTINUED: (6)\nLa Señora Sofía la abraza con fuerza - SEÑORA SOFÍA Gracias… gracias… gracias, Cleo…\nPero Cleo no para de llorar - CLEO No la quería… No la quería…\nLa Señora Sofía intenta calmarla - SEÑORA SOFÍA Shh, shh, shh… Están bien… Los niños están bien…\nPero Cleo insiste entre llanto y mocos - CLEO No la quería… No quería que naciera…\nY se quiebra aún más - CLEO (CONT’D) … ¡Pobrecita!… ¡No quería que naciera!… ¡No quería que naciera!…\nLa Señora Sofía la abraza más fuerte y también llora - SEÑORA SOFÍA Todo va a estar bien, Cleo… Todo va a estar bien…\nLas dos mujeres lloran abrazadas. Es un llanto\ncompartido, con sollozos como arcadas, y largos silencios\nque explotan en prolongadas vocales.\nLos niños se enlazan alrededor de las mujeres,\nabrazándolas. Sólo Toño los mira de pie.\nLos curiosos se disipan. El jinete jala la riendas y el\ncaballo sigue su camino por la playa.\nEl mar enfurecido con sus inquietas olas refleja los\núltimos destellos del día.\n28 de junio de 1971, lunes\n"
stringr y la expresión regular adecuada, elimine las siguientes frases:"mm/dd/yy (White) 133. CONTINUED: (6) " y…pat <- "mm/dd/yy \\(White\\) 133.\nCONTINUED: \\(6\\)"
str_view_all(string = roma_escena,
pattern = pat)
str_remove(string = roma_escena,
pattern = pat)
## [1] " \nLa Señora Sofía la abraza con fuerza -\n SEÑORA SOFÍA\n Gracias… gracias… gracias, Cleo…\nPero Cleo no para de llorar -\n CLEO\n No la quería… No la quería…\nLa Señora Sofía intenta calmarla -\n SEÑORA SOFÍA\n Shh, shh, shh… Están bien… Los\n niños están bien…\nPero Cleo insiste entre llanto y mocos -\n CLEO\n No la quería… No quería que\n naciera…\nY se quiebra aún más -\n CLEO (CONT’D)\n … ¡Pobrecita!… ¡No quería que\n naciera!… ¡No quería que naciera!…\nLa Señora Sofía la abraza más fuerte y también llora -\n SEÑORA SOFÍA\n Todo va a estar bien, Cleo… Todo\n va a estar bien…\nLas dos mujeres lloran abrazadas. Es un llanto\ncompartido, con sollozos como arcadas, y largos silencios\nque explotan en prolongadas vocales.\nLos niños se enlazan alrededor de las mujeres,\nabrazándolas. Sólo Toño los mira de pie.\nLos curiosos se disipan. El jinete jala la riendas y el\ncaballo sigue su camino por la playa.\nEl mar enfurecido con sus inquietas olas refleja los\núltimos destellos del día.\n28 de junio de 1971, lunes\n"
str_view_all(string = roma_escena,
pattern = pat)
"28 de junio de 1971, lunes"pat <- "28 de junio de 1971, lunes"
str_view_all(string = roma_escena,
pattern = pat)
str_remove(string = roma_escena,
pattern = pat)
## [1] " mm/dd/yy (White) 133.\nCONTINUED: (6)\nLa Señora Sofía la abraza con fuerza -\n SEÑORA SOFÍA\n Gracias… gracias… gracias, Cleo…\nPero Cleo no para de llorar -\n CLEO\n No la quería… No la quería…\nLa Señora Sofía intenta calmarla -\n SEÑORA SOFÍA\n Shh, shh, shh… Están bien… Los\n niños están bien…\nPero Cleo insiste entre llanto y mocos -\n CLEO\n No la quería… No quería que\n naciera…\nY se quiebra aún más -\n CLEO (CONT’D)\n … ¡Pobrecita!… ¡No quería que\n naciera!… ¡No quería que naciera!…\nLa Señora Sofía la abraza más fuerte y también llora -\n SEÑORA SOFÍA\n Todo va a estar bien, Cleo… Todo\n va a estar bien…\nLas dos mujeres lloran abrazadas. Es un llanto\ncompartido, con sollozos como arcadas, y largos silencios\nque explotan en prolongadas vocales.\nLos niños se enlazan alrededor de las mujeres,\nabrazándolas. Sólo Toño los mira de pie.\nLos curiosos se disipan. El jinete jala la riendas y el\ncaballo sigue su camino por la playa.\nEl mar enfurecido con sus inquietas olas refleja los\núltimos destellos del día.\n\n"
str_view_all(string = roma_escena,
pattern = pat)
pat <- repeated(x= UPPER, lo = 2, hi = Inf)
str_view_all(string = roma_escena,
pattern = pat)