在R中,expand.grid
列出已注册向量的组合。它先滚动第一个矢量,请告知如何使后一个矢量先滚动?
我漫长的路是data.table(expand.grid(1:3,"-",1:2))[,.(str_c(Var3, Var2, Var1))]
expand.grid(1:3,1:2)
Var1 Var2 Var3
# 1 1 - 1
# 2 2 - 1
# 3 3 - 1
# 4 1 - 2
# 5 2 - 2
# 6 3 - 2
#expected result
# 1 1 - 1
# 2 1 - 2
# 3 1 - 3
# 4 2 - 1
# 5 2 - 2
# 6 2 - 3
答案 0 :(得分:1)
tidyr::crossing
与expand.grid
类似,默认情况下会执行
tidyr::crossing(a = 1:2, b = 1:3)
# a b
# <int> <int>
#1 1 1
#2 1 2
#3 1 3
#4 2 1
#5 2 2
#6 2 3
expand_grid
中也有tidyr
tidyr::expand_grid(x= 1:2, y = 1:3)