繁体   English   中英

通过mapply从两个向量列表创建数据帧列表

[英]create list of data frames from two lists of vectors via mapply

我希望有两个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

您可以在mapply使用SIMPLIFY=FALSE来保存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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM