環境に既に存在する data.frames のリストがあるとします。
library(magrittr)
lapply(
paste0("z", 2011:2015),
function(x) assign(
x,
data.frame(x=rnorm(10),y=rnorm(10)),
pos = 1
)
)
# should create z2011 through z2015 in your R env
私がやりたいことは、列を抽出し、これらを 1 つの data.frame に結合してから、追加の変数を追加して、magrittr 構文を使用してそれらがどこから来たのかを識別することです。
これは、他の手法 (つまり ldply(list)
、rbind.fill(listing)
、rbind_all(listing)
、do.call(rbind,...)
) を使用した些細なことだと思います。私の質問のポイントは、magrittr
構文を使用したアプローチを理解することです。
df <-
paste0("z",2011:2015) %>%
lapply(get) %>%
lapply(function(x) extract2(x,"x")) %>%
# what would you do next? Another approach you think is
# more appropriate for magrittr?
新しい変数を追加する方法がわかりません。例として、私は次のようになりたいと思います:
do.call(
rbind,
lapply(
paste0("z",2011:2015),
function(x) {
data.frame(x = get(x)$x, year = x)
}
)
)