gpt4 book ai didi

r - 如何在 R 中进行集合乘法(笛卡尔积)

转载 作者:行者123 更新时间:2023-12-02 17:21:06 27 4
gpt4 key购买 nike

我知道向量可以表示 n 元组,向量列表可以表示一组 n 元组。一个简单的算法是

AxB<-list();k<-1L
for(i in seq_along(A))for(j in seq_along(B)){AxB[[k]]<-c(A[[i]],B[[j]]);k<-k+1L}
是否有更优雅的数据结构和算法来实现这一点?

最佳答案

Giva 尝试expand.grid 函数:

a<-list(1,2,6,3)
b<-list("a", "b", "c")
expand.grid(a,b)

您的输出将是:

   Var1 Var2
1 1 a
2 2 a
3 6 a
4 3 a
5 1 b
6 2 b
7 6 b
8 3 b
9 1 c
10 2 c
11 6 c
12 3 c

还要查看outer 函数。但在这种情况下,您的变量必须是向量或数组。

关于r - 如何在 R 中进行集合乘法(笛卡尔积),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42572172/

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