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

Carlos Ortega co| @end|ng |rom qu@||tyexce||ence@e@
Vie Mar 31 19:31:01 CEST 2023


OK.
Si ya lo tienes resuelto...

Gracias,
Carlos.

El vie, 31 mar 2023 a las 19:23, David Camilo Gomez Medina (<
dcgomezme using unal.edu.co>) escribió:

> 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. 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.
>


-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es

	[[alternative HTML version deleted]]



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