Re: [R-es] aplicar codigo

2020-09-10 Por tema David Mateos
Que bueno!
el famoso stringsAsFactors.
Muchas gracias Marcelino, un saludo


Enviado desde Outlook


De: Marcelino de la Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 21:20
Para: David Mateos 
Cc: r-help-es@r-project.org 
Asunto: Re: [R-es] aplicar codigo

Ya s� a qu� se debe:
En vuestro R, la funci�n data.frame transforma autom�ticamente los
vectores de tipo /character/ a tipo/factor/.
Con un factor, sapply devuelve el n�mero del nivel correspondiente:

 > col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
'x1','x2', 'x4')

 > sapply(col1, function(x) ifelse(x%in%c("x1","x2","x3"),
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
 x1 x2x11 x1x33 x1
x4 x5x35 x1 x2 x4
"prueba12" "prueba12"  "x11" "prueba12"  "x33" "prueba12"
"prueba2"  "prueba2"  "x35" "prueba12" "prueba12"  "prueba2"

 > sapply(factor(col1), function(x) ifelse(x%in%c("x1","x2","x3"),
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
  [1] "prueba12" "prueba12" "2""prueba12" "4" "prueba12"
"prueba2"  "prueba2"  "5""prueba12" "prueba12" "prueba2"
 >




El 10/09/2020 a las 20:35, David Mateos escribi�:
> Hola,
> a m� me sucede como a Samura y no consigo entender de donde salen esos
> "2", "4" y "5" para df1. �Alguien puede arrojar luz?
> Tanto con la versi�n 3.6 como con la 4.0.2
>
> Si me funciona con
> ```
> transforma <- function(df) {
>   apply(df, 1, function(x)
> ifelse(x%in%c("x1","x2","x3"),
>"prueba12",
>ifelse(x%in%c("x4","x5","x6"),
>   "prueba2",x)
>)
> )
> }
> df1$transformacion <- transforma(df1)
> ```
> Un saludo,
> David
>
> Enviado desde Outlook 
>
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 19:15
> *Para:* Samura . ; r-help-es@r-project.org
> 
> *Asunto:* Re: [R-es] aplicar codigo
> Yo copio y pego este c�digo y me sale correctamente. Se me ocurre que
> pueda deberse a la versi�n de R �cu�l usas?
>
>
> El 10/09/2020 a las 17:51, Samura . escribi�:
> > Gracias por las respuestas.
> >
> > Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
> > Ahora con el c�digo de Marcelino tampoco me sale.
> >
> > col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> > 'x1','x2', 'x4')
> > col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> > col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> > 'x35','x2','x2', 'x4','x6', 'x5')
> >
> > df1<-data.frame(col1)
> > df2<-data.frame(col2)
> > df3<-data.frame(col3)
> >
> > transforma <- function(df) sapply(df, function(x)
> > ifelse(x%in%c("x1","x2","x3"),
> >  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
> >
> > transforma(df1)
> > col1
> > [1,] "prueba12"
> > [2,] "prueba12"
> > [3,] "2"
> > [4,] "prueba12"
> > [5,] "4"
> > [6,] "prueba12"
> > [7,] "prueba2"
> > [8,] "prueba2"
> > [9,] "5"
> > [10,] "prueba12"
> > [11,] "prueba12"
> > [12,] "prueba2"
> >
> > �Alguna idea de pq me sale 2, 4, 5?
> > 
> > *De:* R-help-es  en nombre de
> > Marcelino de la Cruz Rot 
> > *Enviado:* jueves, 10 de septiembre de 2020 9:36
> > *Para:* r-help-es@r-project.org 
> > *Asunto:* Re: [R-es] aplicar codigo
> > Hola:
> > Como dice Carlos, algo as�, por ejemplo:
> >
> > transforma <- function(df) sapply(df, function(x)
> > ifelse(x%in%c("x1","x2","x3"),
> > "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
> >
> >
> >  > transforma(df1)
> >col1
> >   [1,] "prueba1"
> >   [2,] "prueba1"
> >   [3,] "x11"
> >   [4,] "prueba1"
> >   [5,] "x33"
> >   [6,] "prueba1"
> >   [7,] "prueba2"
> >   [8,] "prueba2"
> >   [9,] "x35"
> > [10,] "prueba1"
> > [11,] "prueba1"
> > [12,] "prueba2"
> >
> >
> >  > transforma(df2)
> >   col2
> > [1,] "x12"
> > [2,] "prueba2"
> > [3,] "prueba2"
> > [4,] "x771"
> > [5,] "prueba2"
> > [6,] "prueba1"
> >
> >
> >  > transforma(df3)
> >col3
> >   [1,] "x7"
> >   [2,] "prueba1"
> >   [3,] "prueba2"
> >   [4,] "prueba2"
> >   [5,] "x111"
> >   [6,] "prueba1"
> >   [7,] "prueba2"
> >   [8,] "prueba2"
> >   [9,] "x35"
> > [10,] "prueba1"
> > [11,] "prueba1"
> > [12,] "prueba2"
> > [13,] "prueba2"
> > [14,] "prueba2"
> >
> > Saludos,
> >
> > Marcelino
> >
> > El 10/09/2020 a las 9:41, Carlos Ortega escribi�:
> > > Hola,
> > > Si lo estoy entendiendo bien, lo que tienes que crearte es una
> funci�n.
> > > A la funci�n le pasar�as unos par�metros (las columnas y el
> dataframe al
> > > que a�adir la transformaci�n), y en el cuerpo de la funci�n haces esos
> > > c�lculos.
> > >
> > > Gracias,
> > > Carlos.
> > >
> > >
> > >
> > > Gracias,
> > > Carlos.
> > >
> > > El jue., 10 sept. 2020 a las 3:55, Samura . ()
> > > escribi�:
> > >
> > >> Hola,

Re: [R-es] aplicar codigo

2020-09-10 Por tema Samura .
Solucionado entonces,
muchas gracias

De: R-help-es  en nombre de Marcelino de la 
Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 19:20
Para: David Mateos 
Cc: r-help-es@r-project.org 
Asunto: Re: [R-es] aplicar codigo

Ya s� a qu� se debe:
En vuestro R, la funci�n data.frame transforma autom�ticamente los
vectores de tipo /character/ a tipo/factor/.
Con un factor, sapply devuelve el n�mero del nivel correspondiente:

 > col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
'x1','x2', 'x4')

 > sapply(col1, function(x) ifelse(x%in%c("x1","x2","x3"),
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
 x1 x2x11 x1x33 x1
x4 x5x35 x1 x2 x4
"prueba12" "prueba12"  "x11" "prueba12"  "x33" "prueba12"
"prueba2"  "prueba2"  "x35" "prueba12" "prueba12"  "prueba2"

 > sapply(factor(col1), function(x) ifelse(x%in%c("x1","x2","x3"),
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
  [1] "prueba12" "prueba12" "2""prueba12" "4" "prueba12"
"prueba2"  "prueba2"  "5""prueba12" "prueba12" "prueba2"
 >




El 10/09/2020 a las 20:35, David Mateos escribi�:
> Hola,
> a m� me sucede como a Samura y no consigo entender de donde salen esos
> "2", "4" y "5" para df1. �Alguien puede arrojar luz?
> Tanto con la versi�n 3.6 como con la 4.0.2
>
> Si me funciona con
> ```
> transforma <- function(df) {
>   apply(df, 1, function(x)
> ifelse(x%in%c("x1","x2","x3"),
>"prueba12",
>ifelse(x%in%c("x4","x5","x6"),
>   "prueba2",x)
>)
> )
> }
> df1$transformacion <- transforma(df1)
> ```
> Un saludo,
> David
>
> Enviado desde Outlook 
>
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 19:15
> *Para:* Samura . ; r-help-es@r-project.org
> 
> *Asunto:* Re: [R-es] aplicar codigo
> Yo copio y pego este c�digo y me sale correctamente. Se me ocurre que
> pueda deberse a la versi�n de R �cu�l usas?
>
>
> El 10/09/2020 a las 17:51, Samura . escribi�:
> > Gracias por las respuestas.
> >
> > Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
> > Ahora con el c�digo de Marcelino tampoco me sale.
> >
> > col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> > 'x1','x2', 'x4')
> > col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> > col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> > 'x35','x2','x2', 'x4','x6', 'x5')
> >
> > df1<-data.frame(col1)
> > df2<-data.frame(col2)
> > df3<-data.frame(col3)
> >
> > transforma <- function(df) sapply(df, function(x)
> > ifelse(x%in%c("x1","x2","x3"),
> >  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
> >
> > transforma(df1)
> > col1
> > [1,] "prueba12"
> > [2,] "prueba12"
> > [3,] "2"
> > [4,] "prueba12"
> > [5,] "4"
> > [6,] "prueba12"
> > [7,] "prueba2"
> > [8,] "prueba2"
> > [9,] "5"
> > [10,] "prueba12"
> > [11,] "prueba12"
> > [12,] "prueba2"
> >
> > �Alguna idea de pq me sale 2, 4, 5?
> > 
> > *De:* R-help-es  en nombre de
> > Marcelino de la Cruz Rot 
> > *Enviado:* jueves, 10 de septiembre de 2020 9:36
> > *Para:* r-help-es@r-project.org 
> > *Asunto:* Re: [R-es] aplicar codigo
> > Hola:
> > Como dice Carlos, algo as�, por ejemplo:
> >
> > transforma <- function(df) sapply(df, function(x)
> > ifelse(x%in%c("x1","x2","x3"),
> > "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
> >
> >
> >  > transforma(df1)
> >col1
> >   [1,] "prueba1"
> >   [2,] "prueba1"
> >   [3,] "x11"
> >   [4,] "prueba1"
> >   [5,] "x33"
> >   [6,] "prueba1"
> >   [7,] "prueba2"
> >   [8,] "prueba2"
> >   [9,] "x35"
> > [10,] "prueba1"
> > [11,] "prueba1"
> > [12,] "prueba2"
> >
> >
> >  > transforma(df2)
> >   col2
> > [1,] "x12"
> > [2,] "prueba2"
> > [3,] "prueba2"
> > [4,] "x771"
> > [5,] "prueba2"
> > [6,] "prueba1"
> >
> >
> >  > transforma(df3)
> >col3
> >   [1,] "x7"
> >   [2,] "prueba1"
> >   [3,] "prueba2"
> >   [4,] "prueba2"
> >   [5,] "x111"
> >   [6,] "prueba1"
> >   [7,] "prueba2"
> >   [8,] "prueba2"
> >   [9,] "x35"
> > [10,] "prueba1"
> > [11,] "prueba1"
> > [12,] "prueba2"
> > [13,] "prueba2"
> > [14,] "prueba2"
> >
> > Saludos,
> >
> > Marcelino
> >
> > El 10/09/2020 a las 9:41, Carlos Ortega escribi�:
> > > Hola,
> > > Si lo estoy entendiendo bien, lo que tienes que crearte es una
> funci�n.
> > > A la funci�n le pasar�as unos par�metros (las columnas y el
> dataframe al
> > > que a�adir la transformaci�n), y en el cuerpo de la funci�n haces esos
> > > c�lculos.
> > >
> > > Gracias,
> > > Carlos.
> > >
> > >
> > >
> > > Gracias,
> > > Carlos.
> > >
> > > El jue., 10 sept. 2020 a las 3:55, Samura . ()
> > > escribi�:
> > >
> > >> Hola,
> > >> me gustar�a hacer algo como en el siguiente ejemplo
> 

[R-es] Cálculo de la "d" de Cohen para mas de dos grupos

2020-09-10 Por tema Gerardo Gold
¡Buenas tardes! (en el continente americano):

Tengo los resultados de cuatro muestreos de campo (cuatro
cruceros oceanográficos) y quiero calcular la "d"de Cohen para todas las
combinaciones posibles de los cuatro cruceros. Los paquetes de R que he
encontrado solo permiten hacer el cálculo para un par de grupos.

¿Hay algo que pueda hacer para hacer el cálculo de las seis combinaciones
posibles? Espero no estar preguntando una tontería.

Saludos desde México,

Gerardo

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] aplicar codigo

2020-09-10 Por tema Marcelino de la Cruz Rot

Ya sé a qué se debe:
En vuestro R, la función data.frame transforma automáticamente los 
vectores de tipo /character/ a tipo/factor/.

Con un factor, sapply devuelve el número del nivel correspondiente:

> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35', 
'x1','x2', 'x4')


> sapply(col1, function(x) ifelse(x%in%c("x1","x2","x3"), 
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
    x1 x2    x11 x1    x33 x1 
x4 x5    x35 x1 x2 x4
"prueba12" "prueba12"  "x11" "prueba12"  "x33" "prueba12" 
"prueba2"  "prueba2"  "x35" "prueba12" "prueba12"  "prueba2"


> sapply(factor(col1), function(x) ifelse(x%in%c("x1","x2","x3"), 
"prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
 [1] "prueba12" "prueba12" "2"    "prueba12" "4" "prueba12" 
"prueba2"  "prueba2"  "5"    "prueba12" "prueba12" "prueba2"

>




El 10/09/2020 a las 20:35, David Mateos escribió:

Hola,
a mí me sucede como a Samura y no consigo entender de donde salen esos 
"2", "4" y "5" para df1. ¿Alguien puede arrojar luz?

Tanto con la versión 3.6 como con la 4.0.2

Si me funciona con
```
transforma <- function(df) {
  apply(df, 1, function(x)
    ifelse(x%in%c("x1","x2","x3"),
           "prueba12",
           ifelse(x%in%c("x4","x5","x6"),
                  "prueba2",x)
           )
    )
}
df1$transformacion <- transforma(df1)
```
Un saludo,
David

Enviado desde Outlook 


*De:* R-help-es  en nombre de 
Marcelino de la Cruz Rot 

*Enviado:* jueves, 10 de septiembre de 2020 19:15
*Para:* Samura . ; r-help-es@r-project.org 


*Asunto:* Re: [R-es] aplicar codigo
Yo copio y pego este código y me sale correctamente. Se me ocurre que
pueda deberse a la versión de R ¿cuál usas?


El 10/09/2020 a las 17:51, Samura . escribió:
> Gracias por las respuestas.
>
> Probé lo de hacer la función y no me salía. Pensaba que hacía algo mal.
> Ahora con el código de Marcelino tampoco me sale.
>
> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> 'x1','x2', 'x4')
> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2', 'x4','x6', 'x5')
>
> df1<-data.frame(col1)
> df2<-data.frame(col2)
> df3<-data.frame(col3)
>
> transforma <- function(df) sapply(df, function(x)
>     ifelse(x%in%c("x1","x2","x3"),
>  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
> transforma(df1)
> col1
> [1,] "prueba12"
> [2,] "prueba12"
> [3,] "2"
> [4,] "prueba12"
> [5,] "4"
> [6,] "prueba12"
> [7,] "prueba2"
> [8,] "prueba2"
> [9,] "5"
> [10,] "prueba12"
> [11,] "prueba12"
> [12,] "prueba2"
>
> ¿Alguna idea de pq me sale 2, 4, 5?
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 9:36
> *Para:* r-help-es@r-project.org 
> *Asunto:* Re: [R-es] aplicar codigo
> Hola:
> Como dice Carlos, algo así, por ejemplo:
>
> transforma <- function(df) sapply(df, function(x)
> ifelse(x%in%c("x1","x2","x3"),
> "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
>
>  > transforma(df1)
>    col1
>   [1,] "prueba1"
>   [2,] "prueba1"
>   [3,] "x11"
>   [4,] "prueba1"
>   [5,] "x33"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
>
>
>  > transforma(df2)
>   col2
> [1,] "x12"
> [2,] "prueba2"
> [3,] "prueba2"
> [4,] "x771"
> [5,] "prueba2"
> [6,] "prueba1"
>
>
>  > transforma(df3)
>    col3
>   [1,] "x7"
>   [2,] "prueba1"
>   [3,] "prueba2"
>   [4,] "prueba2"
>   [5,] "x111"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
> [13,] "prueba2"
> [14,] "prueba2"
>
> Saludos,
>
> Marcelino
>
> El 10/09/2020 a las 9:41, Carlos Ortega escribió:
> > Hola,
> > Si lo estoy entendiendo bien, lo que tienes que crearte es una 
función.
> > A la función le pasarías unos parámetros (las columnas y el 
dataframe al

> > que añadir la transformación), y en el cuerpo de la función haces esos
> > cálculos.
> >
> > Gracias,
> > Carlos.
> >
> >
> >
> > Gracias,
> > Carlos.
> >
> > El jue., 10 sept. 2020 a las 3:55, Samura . ()
> > escribió:
> >
> >> Hola,
> >> me gustaría hacer algo como en el siguiente ejemplo
> >>
> >> A un df añadirle una columna que es la transformación de otra,
> >> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
> >> todo lo que sea x4,x5,x6 lo llamo prueba 2
> >> el resto de x las dejo como están.
> >>
> >> Sería algo así
> >>
> >> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> >> 'x1','x2', 'x4')
> >> df1<-data.frame(col1)
> >> attach(df1)
> >>
> >> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
> >> "prueba1",
> >> ifelse(col1 == "x4"|col1 

Re: [R-es] aplicar codigo

2020-09-10 Por tema Marcelino de la Cruz Rot

OK. Yo lo he hecho con R version 4.0.0 (2020-04-24) -- "Arbor Day".
Ya nos cuentas si funciona.

El 10/09/2020 a las 20:19, Samura . escribió:

R version 3.6.3 (2020-02-29) -- "Holding the Windsock"
Rstudio Version 1.2.1335

Voy a actualizarlo todo a ver que pasa.

*De:* Marcelino de la Cruz Rot 
*Enviado:* jueves, 10 de septiembre de 2020 17:15
*Para:* Samura . ; r-help-es@r-project.org 


*Asunto:* Re: [R-es] aplicar codigo
Yo copio y pego este código y me sale correctamente. Se me ocurre que
pueda deberse a la versión de R ¿cuál usas?


El 10/09/2020 a las 17:51, Samura . escribió:
> Gracias por las respuestas.
>
> Probé lo de hacer la función y no me salía. Pensaba que hacía algo mal.
> Ahora con el código de Marcelino tampoco me sale.
>
> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> 'x1','x2', 'x4')
> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2', 'x4','x6', 'x5')
>
> df1<-data.frame(col1)
> df2<-data.frame(col2)
> df3<-data.frame(col3)
>
> transforma <- function(df) sapply(df, function(x)
>     ifelse(x%in%c("x1","x2","x3"),
>  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
> transforma(df1)
> col1
> [1,] "prueba12"
> [2,] "prueba12"
> [3,] "2"
> [4,] "prueba12"
> [5,] "4"
> [6,] "prueba12"
> [7,] "prueba2"
> [8,] "prueba2"
> [9,] "5"
> [10,] "prueba12"
> [11,] "prueba12"
> [12,] "prueba2"
>
> ¿Alguna idea de pq me sale 2, 4, 5?
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 9:36
> *Para:* r-help-es@r-project.org 
> *Asunto:* Re: [R-es] aplicar codigo
> Hola:
> Como dice Carlos, algo así, por ejemplo:
>
> transforma <- function(df) sapply(df, function(x)
> ifelse(x%in%c("x1","x2","x3"),
> "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
>
>  > transforma(df1)
>    col1
>   [1,] "prueba1"
>   [2,] "prueba1"
>   [3,] "x11"
>   [4,] "prueba1"
>   [5,] "x33"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
>
>
>  > transforma(df2)
>   col2
> [1,] "x12"
> [2,] "prueba2"
> [3,] "prueba2"
> [4,] "x771"
> [5,] "prueba2"
> [6,] "prueba1"
>
>
>  > transforma(df3)
>    col3
>   [1,] "x7"
>   [2,] "prueba1"
>   [3,] "prueba2"
>   [4,] "prueba2"
>   [5,] "x111"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
> [13,] "prueba2"
> [14,] "prueba2"
>
> Saludos,
>
> Marcelino
>
> El 10/09/2020 a las 9:41, Carlos Ortega escribió:
> > Hola,
> > Si lo estoy entendiendo bien, lo que tienes que crearte es una 
función.
> > A la función le pasarías unos parámetros (las columnas y el 
dataframe al

> > que añadir la transformación), y en el cuerpo de la función haces esos
> > cálculos.
> >
> > Gracias,
> > Carlos.
> >
> >
> >
> > Gracias,
> > Carlos.
> >
> > El jue., 10 sept. 2020 a las 3:55, Samura . ()
> > escribió:
> >
> >> Hola,
> >> me gustaría hacer algo como en el siguiente ejemplo
> >>
> >> A un df añadirle una columna que es la transformación de otra,
> >> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
> >> todo lo que sea x4,x5,x6 lo llamo prueba 2
> >> el resto de x las dejo como están.
> >>
> >> Sería algo así
> >>
> >> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> >> 'x1','x2', 'x4')
> >> df1<-data.frame(col1)
> >> attach(df1)
> >>
> >> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
> >> "prueba1",
> >> ifelse(col1 == "x4"|col1 == "x5"| col1
> == "x6",
> >> "prueba2", col1))
> >>
> >> detach(df1)
> >> df1
> >>
> >> pero ahora en vez de un df tengo varios
> >>
> >> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> >> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2',
> >> 'x4','x6', 'x5')
> >> df2<-data.frame(col2)
> >> df3<-data.frame(col3)
> >>
> >> ¿cómo puedo aplicar el código al resto de los df sin tener que
> repetirlo?
> >>
> >>
> >>
> >>  [[alternative HTML version deleted]]
> >>
> >> ___
> >> R-help-es mailing list
> >> R-help-es@r-project.org
> >> https://stat.ethz.ch/mailman/listinfo/r-help-es 

> >

> >>
> >
>
> --
> Marcelino de la Cruz Rot
> Depto. de Biología y Geología
> Física y Química Inorgánica
> Universidad Rey Juan Carlos
> Móstoles España
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es 

> 

Re: [R-es] aplicar codigo

2020-09-10 Por tema Samura .
R version 3.6.3 (2020-02-29) -- "Holding the Windsock"
Rstudio Version 1.2.1335

Voy a actualizarlo todo a ver que pasa.

De: Marcelino de la Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 17:15
Para: Samura . ; r-help-es@r-project.org 

Asunto: Re: [R-es] aplicar codigo

Yo copio y pego este c�digo y me sale correctamente. Se me ocurre que
pueda deberse a la versi�n de R �cu�l usas?


El 10/09/2020 a las 17:51, Samura . escribi�:
> Gracias por las respuestas.
>
> Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
> Ahora con el c�digo de Marcelino tampoco me sale.
>
> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> 'x1','x2', 'x4')
> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2', 'x4','x6', 'x5')
>
> df1<-data.frame(col1)
> df2<-data.frame(col2)
> df3<-data.frame(col3)
>
> transforma <- function(df) sapply(df, function(x)
> ifelse(x%in%c("x1","x2","x3"),
>  "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
> transforma(df1)
> col1
> [1,] "prueba12"
> [2,] "prueba12"
> [3,] "2"
> [4,] "prueba12"
> [5,] "4"
> [6,] "prueba12"
> [7,] "prueba2"
> [8,] "prueba2"
> [9,] "5"
> [10,] "prueba12"
> [11,] "prueba12"
> [12,] "prueba2"
>
> �Alguna idea de pq me sale 2, 4, 5?
> 
> *De:* R-help-es  en nombre de
> Marcelino de la Cruz Rot 
> *Enviado:* jueves, 10 de septiembre de 2020 9:36
> *Para:* r-help-es@r-project.org 
> *Asunto:* Re: [R-es] aplicar codigo
> Hola:
> Como dice Carlos, algo as�, por ejemplo:
>
> transforma <- function(df) sapply(df, function(x)
> ifelse(x%in%c("x1","x2","x3"),
> "prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))
>
>
>  > transforma(df1)
>col1
>   [1,] "prueba1"
>   [2,] "prueba1"
>   [3,] "x11"
>   [4,] "prueba1"
>   [5,] "x33"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
>
>
>  > transforma(df2)
>   col2
> [1,] "x12"
> [2,] "prueba2"
> [3,] "prueba2"
> [4,] "x771"
> [5,] "prueba2"
> [6,] "prueba1"
>
>
>  > transforma(df3)
>col3
>   [1,] "x7"
>   [2,] "prueba1"
>   [3,] "prueba2"
>   [4,] "prueba2"
>   [5,] "x111"
>   [6,] "prueba1"
>   [7,] "prueba2"
>   [8,] "prueba2"
>   [9,] "x35"
> [10,] "prueba1"
> [11,] "prueba1"
> [12,] "prueba2"
> [13,] "prueba2"
> [14,] "prueba2"
>
> Saludos,
>
> Marcelino
>
> El 10/09/2020 a las 9:41, Carlos Ortega escribi�:
> > Hola,
> > Si lo estoy entendiendo bien, lo que tienes que crearte es una funci�n.
> > A la funci�n le pasar�as unos par�metros (las columnas y el dataframe al
> > que a�adir la transformaci�n), y en el cuerpo de la funci�n haces esos
> > c�lculos.
> >
> > Gracias,
> > Carlos.
> >
> >
> >
> > Gracias,
> > Carlos.
> >
> > El jue., 10 sept. 2020 a las 3:55, Samura . ()
> > escribi�:
> >
> >> Hola,
> >> me gustar�a hacer algo como en el siguiente ejemplo
> >>
> >> A un df a�adirle una columna que es la transformaci�n de otra,
> >> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
> >> todo lo que sea x4,x5,x6 lo llamo prueba 2
> >> el resto de x las dejo como est�n.
> >>
> >> Ser�a algo as�
> >>
> >> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> >> 'x1','x2', 'x4')
> >> df1<-data.frame(col1)
> >> attach(df1)
> >>
> >> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
> >> "prueba1",
> >> ifelse(col1 == "x4"|col1 == "x5"| col1
> == "x6",
> >> "prueba2", col1))
> >>
> >> detach(df1)
> >> df1
> >>
> >> pero ahora en vez de un df tengo varios
> >>
> >> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> >> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5',
> 'x35','x2','x2',
> >> 'x4','x6', 'x5')
> >> df2<-data.frame(col2)
> >> df3<-data.frame(col3)
> >>
> >> �c�mo puedo aplicar el c�digo al resto de los df sin tener que
> repetirlo?
> >>
> >>
> >>
> >>  [[alternative HTML version deleted]]
> >>
> >> ___
> >> R-help-es mailing list
> >> R-help-es@r-project.org
> >> https://stat.ethz.ch/mailman/listinfo/r-help-es
> 
> >>
> >
>
> --
> Marcelino de la Cruz Rot
> Depto. de Biolog�a y Geolog�a
> F�sica y Qu�mica Inorg�nica
> Universidad Rey Juan Carlos
> M�stoles Espa�a
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
> 


--
Marcelino de la Cruz Rot
Depto. de Biolog�a y Geolog�a
F�sica y Qu�mica Inorg�nica
Universidad Rey Juan Carlos
M�stoles Espa�a


[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] aplicar codigo

2020-09-10 Por tema Marcelino de la Cruz Rot
Yo copio y pego este código y me sale correctamente. Se me ocurre que 
pueda deberse a la versión de R ¿cuál usas?



El 10/09/2020 a las 17:51, Samura . escribió:

Gracias por las respuestas.

Probé lo de hacer la función y no me salía. Pensaba que hacía algo mal.
Ahora con el código de Marcelino tampoco me sale.

col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35', 
'x1','x2', 'x4')

col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 
'x35','x2','x2', 'x4','x6', 'x5')


df1<-data.frame(col1)
df2<-data.frame(col2)
df3<-data.frame(col3)

transforma <- function(df) sapply(df, function(x)
    ifelse(x%in%c("x1","x2","x3"),
 "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))

transforma(df1)
col1
[1,] "prueba12"
[2,] "prueba12"
[3,] "2"
[4,] "prueba12"
[5,] "4"
[6,] "prueba12"
[7,] "prueba2"
[8,] "prueba2"
[9,] "5"
[10,] "prueba12"
[11,] "prueba12"
[12,] "prueba2"

¿Alguna idea de pq me sale 2, 4, 5?

*De:* R-help-es  en nombre de 
Marcelino de la Cruz Rot 

*Enviado:* jueves, 10 de septiembre de 2020 9:36
*Para:* r-help-es@r-project.org 
*Asunto:* Re: [R-es] aplicar codigo
Hola:
Como dice Carlos, algo así, por ejemplo:

transforma <- function(df) sapply(df, function(x)
ifelse(x%in%c("x1","x2","x3"),
"prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))


 > transforma(df1)
   col1
  [1,] "prueba1"
  [2,] "prueba1"
  [3,] "x11"
  [4,] "prueba1"
  [5,] "x33"
  [6,] "prueba1"
  [7,] "prueba2"
  [8,] "prueba2"
  [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"


 > transforma(df2)
  col2
[1,] "x12"
[2,] "prueba2"
[3,] "prueba2"
[4,] "x771"
[5,] "prueba2"
[6,] "prueba1"


 > transforma(df3)
   col3
  [1,] "x7"
  [2,] "prueba1"
  [3,] "prueba2"
  [4,] "prueba2"
  [5,] "x111"
  [6,] "prueba1"
  [7,] "prueba2"
  [8,] "prueba2"
  [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"
[13,] "prueba2"
[14,] "prueba2"

Saludos,

Marcelino

El 10/09/2020 a las 9:41, Carlos Ortega escribió:
> Hola,
> Si lo estoy entendiendo bien, lo que tienes que crearte es una función.
> A la función le pasarías unos parámetros (las columnas y el dataframe al
> que añadir la transformación), y en el cuerpo de la función haces esos
> cálculos.
>
> Gracias,
> Carlos.
>
>
>
> Gracias,
> Carlos.
>
> El jue., 10 sept. 2020 a las 3:55, Samura . ()
> escribió:
>
>> Hola,
>> me gustaría hacer algo como en el siguiente ejemplo
>>
>> A un df añadirle una columna que es la transformación de otra,
>> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
>> todo lo que sea x4,x5,x6 lo llamo prueba 2
>> el resto de x las dejo como están.
>>
>> Sería algo así
>>
>> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
>> 'x1','x2', 'x4')
>> df1<-data.frame(col1)
>> attach(df1)
>>
>> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
>> "prueba1",
>> ifelse(col1 == "x4"|col1 == "x5"| col1 
== "x6",

>> "prueba2", col1))
>>
>> detach(df1)
>> df1
>>
>> pero ahora en vez de un df tengo varios
>>
>> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
>> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 
'x35','x2','x2',

>> 'x4','x6', 'x5')
>> df2<-data.frame(col2)
>> df3<-data.frame(col3)
>>
>> ¿cómo puedo aplicar el código al resto de los df sin tener que 
repetirlo?

>>
>>
>>
>>  [[alternative HTML version deleted]]
>>
>> ___
>> R-help-es mailing list
>> R-help-es@r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es 


>>
>

--
Marcelino de la Cruz Rot
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es 




--
Marcelino de la Cruz Rot
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] aplicar codigo

2020-09-10 Por tema Samura .
Gracias por las respuestas.

Prob� lo de hacer la funci�n y no me sal�a. Pensaba que hac�a algo mal.
Ahora con el c�digo de Marcelino tampoco me sale.

col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35', 'x1','x2', 
'x4')
col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2', 
'x4','x6', 'x5')

df1<-data.frame(col1)
df2<-data.frame(col2)
df3<-data.frame(col3)

transforma <- function(df) sapply(df, function(x)
ifelse(x%in%c("x1","x2","x3"),
   "prueba12",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))

transforma(df1)
col1
[1,] "prueba12"
[2,] "prueba12"
[3,] "2"
[4,] "prueba12"
[5,] "4"
[6,] "prueba12"
[7,] "prueba2"
[8,] "prueba2"
[9,] "5"
[10,] "prueba12"
[11,] "prueba12"
[12,] "prueba2"

�Alguna idea de pq me sale 2, 4, 5?

De: R-help-es  en nombre de Marcelino de la 
Cruz Rot 
Enviado: jueves, 10 de septiembre de 2020 9:36
Para: r-help-es@r-project.org 
Asunto: Re: [R-es] aplicar codigo

Hola:
Como dice Carlos, algo as�, por ejemplo:

transforma <- function(df) sapply(df, function(x)
ifelse(x%in%c("x1","x2","x3"),
"prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))


 > transforma(df1)
   col1
  [1,] "prueba1"
  [2,] "prueba1"
  [3,] "x11"
  [4,] "prueba1"
  [5,] "x33"
  [6,] "prueba1"
  [7,] "prueba2"
  [8,] "prueba2"
  [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"


 > transforma(df2)
  col2
[1,] "x12"
[2,] "prueba2"
[3,] "prueba2"
[4,] "x771"
[5,] "prueba2"
[6,] "prueba1"


 > transforma(df3)
   col3
  [1,] "x7"
  [2,] "prueba1"
  [3,] "prueba2"
  [4,] "prueba2"
  [5,] "x111"
  [6,] "prueba1"
  [7,] "prueba2"
  [8,] "prueba2"
  [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"
[13,] "prueba2"
[14,] "prueba2"

Saludos,

Marcelino

El 10/09/2020 a las 9:41, Carlos Ortega escribi�:
> Hola,
> Si lo estoy entendiendo bien, lo que tienes que crearte es una funci�n.
> A la funci�n le pasar�as unos par�metros (las columnas y el dataframe al
> que a�adir la transformaci�n), y en el cuerpo de la funci�n haces esos
> c�lculos.
>
> Gracias,
> Carlos.
>
>
>
> Gracias,
> Carlos.
>
> El jue., 10 sept. 2020 a las 3:55, Samura . ()
> escribi�:
>
>> Hola,
>> me gustar�a hacer algo como en el siguiente ejemplo
>>
>> A un df a�adirle una columna que es la transformaci�n de otra,
>> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
>> todo lo que sea x4,x5,x6 lo llamo prueba 2
>> el resto de x las dejo como est�n.
>>
>> Ser�a algo as�
>>
>> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
>> 'x1','x2', 'x4')
>> df1<-data.frame(col1)
>> attach(df1)
>>
>> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
>> "prueba1",
>> ifelse(col1 == "x4"|col1 == "x5"| col1 == "x6",
>> "prueba2", col1))
>>
>> detach(df1)
>> df1
>>
>> pero ahora en vez de un df tengo varios
>>
>> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
>> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2',
>> 'x4','x6', 'x5')
>> df2<-data.frame(col2)
>> df3<-data.frame(col3)
>>
>> �c�mo puedo aplicar el c�digo al resto de los df sin tener que repetirlo?
>>
>>
>>
>>  [[alternative HTML version deleted]]
>>
>> ___
>> R-help-es mailing list
>> R-help-es@r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>

--
Marcelino de la Cruz Rot
Depto. de Biolog�a y Geolog�a
F�sica y Qu�mica Inorg�nica
Universidad Rey Juan Carlos
M�stoles Espa�a

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] SALDO EN RESUMEN DE CUENTA CONTABLE

2020-09-10 Por tema Carlos J. Gil Bellosta
Hola, ¿qué tal?

Lo que quieres es algo así como

cumsum(debe) - cumsum(haber)

o una variante de lo anterior.

Un saludo,

Carlos J. Gil Bellosta
http://www.datanalyltics.com

El jue., 10 sept. 2020 a las 11:50, Jesus MARTIN F. ()
escribió:

> Tengo que preparar un Dataset que termine siendo un resumen de cuenta
> contable a partir de los datos del diario contable de una empresa que el
> script va filtrando cuenta por cuenta. He podido importar los datos con
> variables: fecha , concepto, valor debe, valor haber y me falta una
> variable que sea el saldo. Sucede que el saldo se tiene que calcular fila a
> fila, es decir sumando el valor debe y restando el valor haber al saldo de
> la fila anterior y no he logrado hacerlo. Podrían ayudarme ?
>
>Gracias
>
>Jesús
> --
> Jesus Martin Frade
> Papelera ANDORPEL
> (+54) (9) 11 4946 2131
> jesusmar...@andorpel.com
> jesusmar...@andorra.ad
>
> [[alternative HTML version deleted]]
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


[R-es] SALDO EN RESUMEN DE CUENTA CONTABLE

2020-09-10 Por tema Jesus MARTIN F.
Tengo que preparar un Dataset que termine siendo un resumen de cuenta
contable a partir de los datos del diario contable de una empresa que el
script va filtrando cuenta por cuenta. He podido importar los datos con
variables: fecha , concepto, valor debe, valor haber y me falta una
variable que sea el saldo. Sucede que el saldo se tiene que calcular fila a
fila, es decir sumando el valor debe y restando el valor haber al saldo de
la fila anterior y no he logrado hacerlo. Podrían ayudarme ?

   Gracias

   Jesús
-- 
Jesus Martin Frade
Papelera ANDORPEL
(+54) (9) 11 4946 2131
jesusmar...@andorpel.com
jesusmar...@andorra.ad

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] aplicar codigo

2020-09-10 Por tema Marcelino de la Cruz Rot

Hola:
Como dice Carlos, algo así, por ejemplo:

transforma <- function(df) sapply(df, function(x) 
ifelse(x%in%c("x1","x2","x3"), 
"prueba1",ifelse(x%in%c("x4","x5","x6"),"prueba2",x)))



> transforma(df1)
  col1
 [1,] "prueba1"
 [2,] "prueba1"
 [3,] "x11"
 [4,] "prueba1"
 [5,] "x33"
 [6,] "prueba1"
 [7,] "prueba2"
 [8,] "prueba2"
 [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"


> transforma(df2)
 col2
[1,] "x12"
[2,] "prueba2"
[3,] "prueba2"
[4,] "x771"
[5,] "prueba2"
[6,] "prueba1"


> transforma(df3)
  col3
 [1,] "x7"
 [2,] "prueba1"
 [3,] "prueba2"
 [4,] "prueba2"
 [5,] "x111"
 [6,] "prueba1"
 [7,] "prueba2"
 [8,] "prueba2"
 [9,] "x35"
[10,] "prueba1"
[11,] "prueba1"
[12,] "prueba2"
[13,] "prueba2"
[14,] "prueba2"

Saludos,

Marcelino

El 10/09/2020 a las 9:41, Carlos Ortega escribió:

Hola,
Si lo estoy entendiendo bien, lo que tienes que crearte es una función.
A la función le pasarías unos parámetros (las columnas y el dataframe al
que añadir la transformación), y en el cuerpo de la función haces esos
cálculos.

Gracias,
Carlos.



Gracias,
Carlos.

El jue., 10 sept. 2020 a las 3:55, Samura . ()
escribió:


Hola,
me gustaría hacer algo como en el siguiente ejemplo

A un df añadirle una columna que es la transformación de otra,
en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
todo lo que sea x4,x5,x6 lo llamo prueba 2
el resto de x las dejo como están.

Sería algo así

col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
'x1','x2', 'x4')
df1<-data.frame(col1)
attach(df1)

df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
"prueba1",
ifelse(col1 == "x4"|col1 == "x5"| col1 == "x6",
"prueba2", col1))

detach(df1)
df1

pero ahora en vez de un df tengo varios

col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2',
'x4','x6', 'x5')
df2<-data.frame(col2)
df3<-data.frame(col3)

¿cómo puedo aplicar el código al resto de los df sin tener que repetirlo?



 [[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es





--
Marcelino de la Cruz Rot
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] aplicar codigo

2020-09-10 Por tema Carlos Ortega
Hola,
Si lo estoy entendiendo bien, lo que tienes que crearte es una función.
A la función le pasarías unos parámetros (las columnas y el dataframe al
que añadir la transformación), y en el cuerpo de la función haces esos
cálculos.

Gracias,
Carlos.



Gracias,
Carlos.

El jue., 10 sept. 2020 a las 3:55, Samura . ()
escribió:

> Hola,
> me gustaría hacer algo como en el siguiente ejemplo
>
> A un df añadirle una columna que es la transformación de otra,
> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
> todo lo que sea x4,x5,x6 lo llamo prueba 2
> el resto de x las dejo como están.
>
> Sería algo así
>
> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35',
> 'x1','x2', 'x4')
> df1<-data.frame(col1)
> attach(df1)
>
> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3",
> "prueba1",
>ifelse(col1 == "x4"|col1 == "x5"| col1 == "x6",
> "prueba2", col1))
>
> detach(df1)
> df1
>
> pero ahora en vez de un df tengo varios
>
> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2',
> 'x4','x6', 'x5')
> df2<-data.frame(col2)
> df3<-data.frame(col3)
>
> ¿cómo puedo aplicar el código al resto de los df sin tener que repetirlo?
>
>
>
> [[alternative HTML version deleted]]
>
> ___
> 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

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] aplicar codigo

2020-09-10 Por tema Emilio L. Cano
Buenos días,

Yo usaría dplyr::recode, mira los ejemplos aquí:
https://dplyr.tidyverse.org/reference/recode.html 


Un saludo,
Emilio

> El 10 sept 2020, a las 3:55, Samura .  escribió:
> 
> Hola,
> me gustar�a hacer algo como en el siguiente ejemplo
> 
> A un df a�adirle una columna que es la transformaci�n de otra,
> en plan a todo lo que sea  x1, x2, x3 lo llamo prueba 1
> todo lo que sea x4,x5,x6 lo llamo prueba 2
> el resto de x las dejo como est�n.
> 
> Ser�a algo as�
> 
> col1 <- c('x1', 'x2', 'x11', 'x1','x33', 'x1','x4', 'x5', 'x35', 'x1','x2', 
> 'x4')
> df1<-data.frame(col1)
> attach(df1)
> 
> df1$transformacion<-ifelse(col1 == "x1"|col1 == "x2"| col1 == "x3", "prueba1",
>   ifelse(col1 == "x4"|col1 == "x5"| col1 == "x6", 
> "prueba2", col1))
> 
> detach(df1)
> df1
> 
> pero ahora en vez de un df tengo varios
> 
> col2 <- c('x12', 'x4', 'x6', 'x771','x4', 'x2')
> col3 <- c('x7', 'x2', 'x4', 'x5','x111', 'x1','x4', 'x5', 'x35','x2','x2', 
> 'x4','x6', 'x5')
> df2<-data.frame(col2)
> df3<-data.frame(col3)
> 
> �c�mo puedo aplicar el c�digo al resto de los df sin tener que repetirlo?
> 
> 
> 
>   [[alternative HTML version deleted]]
> 
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es


[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es