我正在尝试查找笛卡尔积的 dplyr 函数。
我有两个没有公共(public)变量的简单 data.frame:
x <- data.frame(x=c("a","b","c"))
y <- data.frame(y=c(1,2,3))
我想重现结果
merge(x,y)
x y
1 a 1
2 b 1
3 c 1
4 a 2
5 b 2
6 c 2
7 a 3
8 b 3
9 c 3
我已经寻找过这个(例如 here 或 here )但没有找到任何有用的东西。
非常感谢你
最佳答案
使用crossing来自 tidyr
包裹:
x <- data.frame(x=c("a","b","c"))
y <- data.frame(y=c(1,2,3))
crossing(x, y)
结果:
x y
1 a 1
2 a 2
3 a 3
4 b 1
5 b 2
6 b 3
7 c 1
8 c 2
9 c 3
关于r - 带有 dplyr R 的笛卡尔积,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43228379/