我期待两个data.frame的列表而不是4个向量的列表。我做错了什么?
list1 <- list(1:3, 5:6)
list2 <- list(7:9, 10:11)
result <- mapply((function(x, y) data.frame(id = x, value = y)),
list1, list2)
str(result)
# List of 4
# $ : int [1:3] 1 2 3
# $ : int [1:3] 7 8 9
# $ : int [1:2] 5 6
# $ : int [1:2] 10 11
# - attr(*, "dim")= int [1:2] 2 2
# - attr(*, "dimnames")=List of 2
# ..$ : chr [1:2] "id" "value"
# ..$ : NULL
答案 0 :(得分:1)
您可以使用SIMPLIFY=FALSE
中的mapply
来保存list
结构
mapply(function(x, y) data.frame(id = x, value = y),
list1, list2, SIMPLIFY=FALSE)
或使用Map
Map(function(x,y) data.frame(id=x, value=y), list1, list2)