[R-es] Extraer texto de una columna en Excel

David Camilo Gomez Medina dcgomezme @end|ng |rom un@|@edu@co
Vie Mar 31 19:23:19 CEST 2023


Muchas gracias por la alternativa de utilizar la librería stringi, Carlos,
no la conocía.

On Fri, 31 Mar 2023 at 12:11, David Camilo Gomez Medina <
dcgomezme using unal.edu.co> wrote:

> Muchas gracias Carlos, lo que quiero hacer es lo siguiente: extraer el
> texto que hay entre textura/s hasta el punto final.
> Ejemplo:
> *Moderadamente profundos, bien drenados, de textura franco arenosa a
> franco arcillo arenosa. Fertilidad natural media*
> Lo que quiero extraer sería:  *franco arenosa a franco arcillo arenosa *
>
> Al final lo pude realizar de la siguiente manera:
>
> df <- read_excel("Agrologia.xlsx")
>
> df$Extracted_Text <- trimws(str_extract(df$CARACTERIS,
> "(?<=textura?(?:[^a-zA-Z]|s)).*?(?=\\.)"))
>
> Estoy abierto a cualquier sugerencia o comentario.
>
> Muchas gracias.
>
> On Fri, 31 Mar 2023 at 12:03, Carlos Ortega <cof using qualityexcellence.es>
> wrote:
>
>> Hola,
>>
>> Como no sé lo que querías, veo dos alternativas...
>> Yo suelo usar "stringi" en vez de "stringr"
>>
>> #-----------------
>> library(readxl)
>> library(stringi)
>> datos <- read_excel("Agrologia.xlsx")
>> toextract <- unlist(stri_extract_all_fixed(datos$CARACTERIS, "textura"))
>>
>> #--- Si quiero un dataframe completo donde CARACTERIS tenga "textura" o
>> "texturas"
>> lineas_textura <- datos[ !is.na(toextract), ]
>> #--- Si quiero los elementos de CARACTERIS que tiene "textura" o
>> "texturas"
>> campo_textura <- datos$CARACTERIS[ !is.na((toextract))]
>> #---------------
>>
>> Gracias,
>>
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>> El vie, 31 mar 2023 a las 17:20, David Camilo Gomez Medina (<
>> dcgomezme using unal.edu.co>) escribió:
>>
>>> Buen día,
>>>
>>> Estoy extrayendo solo una parte de texto de una celda en Excel, pero
>>> tengo un inconveniente. Quiero extraer el texto desde donde dice
>>> *textura* hasta el siguiente punto, pero hay unas celdas que dicen
>>> *texturas* y me está extrayendo también ésta *s*, cómo podría cambiar
>>> el siguiente código para que me extraiga tanto textura como texturas. Quedo
>>> muy atento, gracias.
>>>
>>> rm(list = ls())
>>>
>>> library(readxl)
>>> library(stringr)
>>> library(openxlsx)
>>>
>>> setwd("~/INFO_DIEGO/R")
>>>
>>> df <- read_excel("Agrologia.xlsx")
>>>
>>> df$Extracted_Text <- str_extract(df$CARACTERIS, "(<=?textura?).*?\\.")
>>>
>>> write.xlsx(df, "modified_file.xlsx")
>>>
>>>
>>>
>>>
>>> *Aviso legal:* El contenido de este mensaje y los archivos adjuntos son
>>> confidenciales y de uso exclusivo de la Universidad Nacional de Colombia.
>>> Se encuentran dirigidos sólo para el uso del destinatario al cual van
>>> enviados. La reproducción, lectura y/o copia se encuentran prohibidas a
>>> cualquier persona diferente a este y puede ser ilegal. Si usted lo ha
>>> recibido por error, infórmenos y elimínelo de su correo. Los Datos
>>> Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra
>>> Política de Datos Personales que podrá consultar en la página web
>>> www.unal.edu.co. Las opiniones, informaciones, conclusiones y cualquier
>>> otro tipo de dato contenido en este correo electrónico, no relacionados con
>>> la actividad de la Universidad Nacional de Colombia, se entenderá como
>>> personales y de ninguna manera son avaladas por la Universidad.
>>> _______________________________________________
>>> R-help-es mailing list
>>> R-help-es using r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>
>>
>>
>> --
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>

-- 
*Aviso legal:* El contenido de este mensaje y los archivos adjuntos son 
confidenciales y de uso exclusivo de la Universidad Nacional de Colombia. 
Se encuentran dirigidos sólo para el uso del destinatario al cual van 
enviados. La reproducción, lectura y/o copia se encuentran prohibidas a 
cualquier persona diferente a este y puede ser ilegal. Si usted lo ha 
recibido por error, infórmenos y elimínelo de su correo. Los Datos 
Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra 
Política de Datos Personales que podrá consultar en la página web 
www.unal.edu.co <http://www.unal.edu.co/>.* *Las opiniones, informaciones, 
conclusiones y cualquier otro tipo de dato contenido en este correo 
electrónico, no relacionados con la actividad de la Universidad Nacional de 
Colombia, se entenderá como personales y de ninguna manera son avaladas por 
la Universidad.

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es