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 . (<tontit...@hotmail.com>)
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

Responder a