先日の投稿で、関数内からグローバル環境の複数のオブジェクトに値を割り当てる方法を知りたいと思いました。これは私の試みですlapply
(assign
より安全かもしれませ<<-
んが、実際に使用したことはなく、慣れていません)。
#fake data set
df <- data.frame(
x.2=rnorm(25),
y.2=rnorm(25),
g=rep(factor(LETTERS[1:5]), 5)
)
#split it into a list of data frames
LIST <- split(df, df$g)
#pre-allot 5 objects in R with class data.frame()
V <- W <- X <- Y <- Z <- data.frame()
#attempt to assign the data frames in the LIST to the objects just created
lapply(seq_along(LIST), function(x) c(V, W, X, Y, Z)[x] <<- LIST[[x]])
この作業を行う (または作業を改善/高速化する) ために、私のコードの一部/すべての部分を自由に短縮してください。