2016-04-19 6 views
0

多くの新しい変数を作成していますが、既存の変数に基づいて常に同じです。それは常に同じであることを考えると、私はループでそれをやりたいと思います。Rのループオーバーリストでエラーが発生する

varlist <- list("x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10") 

for (i in varlist){ 

    mydata$Var2_[i] <- (mydata$Var1_[i]/2) 

} 

にはどうすれば "I" を参照してくださいか?

1: In `[<-.data.table`(x, j = name, value = value) : 
    Adding new column 'PP_onesided_' then assigning NULL (deleting it). 
+0

FYIでは、 'varlist = paste0(" x "、1:10)'を実行できます。 – eipi10

+0

「mydata」とは – csgillespie

答えて

0

あなたが一緒に列名を連結しようとしているように見えます:[[i]が]、[i]とちょうど私が、常にエラーを取得します。私は、私は、試してみました。このようにしてみてください...

varlist <- c("x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10") 

for (i in varlist){  
    mydata[, paste0("Var2_", i)] <- (mydata[, paste0("Var1_", i)]/2)  
}