3

私は以下を持っていlist1ますlist2

df1   <- data.frame(x=(1:3),Q=(3:5))
df2   <- data.frame(x=(1:3),Q=(3:5))
df3   <- data.frame(x=(1:3),Q=(3:5))
list1 <- list(df1,df2,df3)
list2 <- list(2,3,6)

の対応する値に従ってQ、各要素からランダムにサンプリングしたいlist1 list2

したがってQ、リスト要素の最初のペアを2回サンプリングします。

これまで私は管理しました:

df1   <- data.frame(x=(1:3),Q=(3:5))
z <- 2
sapply(1:z,function(i) sample(df1$Q,1))

しかし、私はmapply両方のリストの要素のすべてのペアの両方でこれを試みるのに苦労しています。

4

2 に答える 2

5

mapplyアプローチは次のとおりです。

mapply(function(x, y) sample(x[["Q"]], y, replace = TRUE), list1, list2)
于 2012-12-11T17:41:06.683 に答える
0

これがあなたが求めているものであるかどうかはわかりませんが、役立つかもしれません:

FUN <- function(x, z) sapply(1:z,function(i) sample(x[["Q"]], 1))
lapply(seq_along(list1), function(i) FUN(list1[[i]], list2[[i]]))
于 2012-12-11T17:40:22.087 に答える