gpt4 book ai didi

r - 递归地从多个列表中绑定(bind)项目

转载 作者:行者123 更新时间:2023-12-04 10:56:23 25 4
gpt4 key购买 nike

给定三个(或 n 列表):

one   <- list(a=1:2,b="one")
two <- list(a=2:3,b="two")
three <- list(a=3:4,b="three")
cbind 的更有效方式是什么?在 n 中查找每个列表项列表,得到这个结果?
mapply(cbind,mapply(cbind,one,two,SIMPLIFY=FALSE),three,SIMPLIFY=FALSE)

$a
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 2 3 4

$b
[,1] [,2] [,3]
[1,] "one" "two" "three"

这在 n 时可以正常工作是 23但很快就会变得异常复杂。
有没有更有效的变化?我在 S.O. 上看到过类似的问题。但一直在努力适应它们。

最佳答案

使用ReduceMap ( Mapmapply(..., SIMPLIFY = FALSE) 的简单包装器|

Reduce(function(x,y) Map(cbind, x, y),list(one, two,three))

使用 Reduce 时或 R 中的大多数函数式编程基础函数,您通常不能在 ... 中传递参数所以你通常需要编写一个小的匿名函数来做你想做的事。

关于r - 递归地从多个列表中绑定(bind)项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15148451/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com