wage2 <- data.frame(exper = 1:5,
tenure = 6:10,
age = 11:15)
for (v in c("exper", "tenure", "age" )) {
wage2[[paste0(v,2)]]<-wage2[[v]]^2
}
wage2
#> exper tenure age exper2 tenure2 age2
#> 1 1 6 11 1 36 121
#> 2 2 7 12 4 49 144
#> 3 3 8 13 9 64 169
#> 4 4 9 14 16 81 196
#> 5 5 10 15 25 100 225
Created on 2020-04-05 by the reprex package (v0.3.0)
But using loops is not the best way to go for this kind of tasks, there are better tools for the job on the R world
library(dplyr)
wage2 <- data.frame(exper = 1:5,
tenure = 6:10,
age = 11:15)
wage2 %>%
mutate_all(list(`2`=~.^2))
#> exper tenure age exper_2 tenure_2 age_2
#> 1 1 6 11 1 36 121
#> 2 2 7 12 4 49 144
#> 3 3 8 13 9 64 169
#> 4 4 9 14 16 81 196
#> 5 5 10 15 25 100 225