Skip to content
Back to formatted view

Raw Message

Message-ID: <4D32FCFF.7010002@uni-bremen.de>
Date: 2011-01-16T14:13:19Z
From: Patrick Hausmann
Subject: transform a df with a condition

Dear all,

for each A == 3 in 'df' I would like to change the variables B and K.
My result should be the whole df and not the subset (A==3)...

df <- data.frame(A = c(1,1,3,2,2,3,3),
                  B = c(2,1,1,2,7,8,7),
                  K = c("a.1", "d.2", "f.3",
                        "a.1", "k.4", "f.9", "f.5"))

x1 <- within(df[df$A ==3, ], {
        B1 <- 5
        K1 <- gsub("f","m", K)
        })

x2 <- transform(df[df$A==3, ], B1 = 5, K1 = gsub("f","m", K))

Thanks for any help!
Patrick