muchas gracias!!

El mié, 15 mar 2023 a las 6:12, Carlos Ortega (<c...@qualityexcellence.es>)
escribió:

> Hola,
>
> Juntandolo todo se puede hacer así...
>
> #-----------------------------
> cadena <- c(
>   'si p1 == 1 o 2 == 1,3 si p1 == 1 o 2 = 1,3',
>   'si p1 == 3 o 4 == 1 si p1 == 3 o 4 = 1',
>   'si p1 == 5 == 0,7 si p1 == 5 = 0,7',
>   'si p1 == 5 = 0,7 si p1 == 5 = 0,7',
>   'si p1 == 6 == 0 si p1 == 6 = 0',
>   'si p1 == 7 == no aplica si p1 == 7 = no aplica'
> )
>
> # Función para reemplazar el último "==" por un "=" en una cadena
> replace_last_equal <- function(s) {
>   miwords <- unlist(strsplit(s, "=="))
>   paste0(paste(miwords[1:(length(miwords) - 1)], collapse = '=='), '=',
> miwords[length(miwords)])
> }
>
> # Aplicar la función a cada elemento de la cadena
> cadenew <- as.vector( sapply(cadena, replace_last_equal))
>
> # Ver el resultado
> print(cadenew)
> #-----------------------------
>
>
> Gracias,
> Carlos Ortega
> www.qualityexcellence.es
>
> El mié, 15 mar 2023 a las 0:28, Carlos Ortega (<c...@qualityexcellence.es>)
> escribió:
>
>> Hola,
>>
>> Prueba a envolver el strplit con unlist(), así:
>> b <- unlist(strsplit(a, "=="))
>>
>> Pero entendí que lo que quieres es sustituir el último "==" por un "="....
>>
>>
>> El mar, 14 mar 2023 a las 23:06, juan manuel dias (<juamad...@gmail.com>)
>> escribió:
>>
>>> hola! ,me sirve, pero el tema es que necesito crear tres variables
>>> nuevas con el resultado de strsplit....pero me genera una lista y no lo
>>> estoy pudiendo combinar con mutate de dplyr....
>>>
>>> El mar, 14 mar 2023 a las 7:46, juan manuel dias (<juamad...@gmail.com>)
>>> escribió:
>>>
>>>> Muchas gracias!! Lo pruebo!!!
>>>>
>>>> El mar., 14 de marzo de 2023 04:55, Proyecto R-UCA <r-...@uca.es>
>>>> escribió:
>>>>
>>>>> Buenas,
>>>>>
>>>>> Una opción es partir la cadena usando el == como separador y luego
>>>>> recomponerla.
>>>>>
>>>>> > a <- "p1 == 1 o 2 o p2 == 1 == 1,3"
>>>>> > b <- strsplit(a, "==")
>>>>> > b <- b[[1]]
>>>>> > b
>>>>> [1] "p1 " " 1 o 2 o p2 " " 1 " " 1,3"
>>>>> > paste0(paste0(b[1:(length(b)-1)], collapse = '=='), '=',
>>>>> b[length(b)])
>>>>> [1] "p1 == 1 o 2 o p2 == 1 = 1,3"
>>>>>
>>>>> Un saludo, Manuel.
>>>>>
>>>>> El lun, 13-03-2023 a las 19:15 -0300, juan manuel dias escribió:
>>>>>
>>>>> hola ,muchas gracias!
>>>>> no conocía esa librería para los regex...respecto a la pregunta de
>>>>> Carlos, puedo tener más de un == dentro de la cadena, por ejemplo así:
>>>>>
>>>>> así está
>>>>> si p1 == 1 o 2 o p2 == 1  == 1,3
>>>>>
>>>>> así necesito
>>>>> si p1 == 1 o 2 o p2 == 1  = 1,3
>>>>>
>>>>> El lun, 13 mar 2023 a las 18:11, Juan Abasolo (<juan.abas...@ehu.eus>)
>>>>> escribió:
>>>>>
>>>>> Mientras aparezca alguien que sepa guiarte bien, te muestro desde mi
>>>>> autodidactez por dónde encararía. Y lo que para mí fue un gran
>>>>> descubirmiento: El paquete RegExplain,
>>>>> [image: irudia.png]
>>>>> (==)([\d, \w]*=[\d, \w]*)$
>>>>>
>>>>> Eso captura en dos grupos diferentes todo lo que está desde el final
>>>>> hasta el primer igual, más todo lo que sigue hasta en igual doble, que lo
>>>>> excluye y lo captura como otro grupo.
>>>>> Tenés que conseguir cambiar solamente el primer grupo. Y se me acabó
>>>>> la sapienza.
>>>>>
>>>>> Suerte
>>>>>
>>>>>
>>>>> Hau idatzi du juan manuel dias (juamad...@gmail.com) erabiltzaileak
>>>>> (2023 mar. 13(a), al. (20:38)):
>>>>>
>>>>> Hola,
>>>>>
>>>>> Tengo una variable string que tiene muchos casos, pero necesito en
>>>>> cada uno
>>>>> de ellos reemplazar el último "==" por "=".
>>>>>
>>>>> asi está asi necesito
>>>>> si p1 == 1 o 2 == 1,3 si p1 == 1 o 2 = 1,3
>>>>> si p1 == 3 o 4 == 1 si p1 == 3 o 4 = 1
>>>>> si p1 == 5 == 0,7 si p1 == 5 = 0,7
>>>>> si p1 == 5 = 0,7 si p1 == 5 = 0,7
>>>>> si p1 == 6 == 0 si p1 == 6 = 0
>>>>> si p1 == 7 == no aplica si p1 == 7 = no aplica
>>>>>
>>>>> Muchas gracias!!
>>>>>
>>>>> Juan.
>>>>>
>>>>>         [[alternative HTML version deleted]]
>>>>>
>>>>> _______________________________________________
>>>>> R-help-es mailing list
>>>>> R-help-es@r-project.org
>>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>>> <https://urldefense.com/v3/__https://stat.ethz.ch/mailman/listinfo/r-help-es__;!!D9dNQwwGXtA!VOrNkgAM8xLYFPl5_ay-jsI027eLRwjwkMr-dYzea-A82uQTihgPogjnFoc9QhaJ8smUDai2GjBMY1g$>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Juan Abasolo, PhD
>>>>>
>>>>> Hizkuntzaren eta Literaturaren Didaktika Saila | EUDIA ikerketa taldea
>>>>> Bilboko Hezkuntza Fakultatea
>>>>> Euskal Herriko Unibertsitatea UPV/EHU
>>>>>
>>>>> Sarriena auzoa z/g 48940 - Leioa (Bizkaia)
>>>>>
>>>>> T       : (+34) 94 601 7567
>>>>> Telegram: @JuanAbasolo
>>>>> Skype   : abasolo72
>>>>>
>>>>> _______________________________________________
>>>>> R-help-es mailing list
>>>>> R-help-es@r-project.org
>>>>>
>>>>> https://urldefense.com/v3/__https://stat.ethz.ch/mailman/listinfo/r-help-es__;!!D9dNQwwGXtA!VOrNkgAM8xLYFPl5_ay-jsI027eLRwjwkMr-dYzea-A82uQTihgPogjnFoc9QhaJ8smUDai2GjBMY1g$
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> R-help-es mailing list
>>>>> R-help-es@r-project.org
>>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>>>
>>>> _______________________________________________
>>> R-help-es mailing list
>>> R-help-es@r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>
>>
>>
>> --
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
_______________________________________________
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a