我正在尝试构建四个向量(模型中的参数)的所有可能组合,这将给我一个大的nx4矩阵,然后我可以在每个参数集(行)上运行模拟。在R中,我可以通过在Mathematica样式中使用expand.grid
来实现此目的,我可以使用类似于vcat
的外部产品,并使用hcat
减少输出。
是否有来自R或外部地图功能的expand.grid
的某些功能模拟?
玩具示例:
A = [1 2]
B = [3 4]
some magic
output = [1 3, 1 4, 2 3, 2 4]
答案 0 :(得分:3)
使用Iterators包,它可能如下所示:
using Iterators
for p in product([1,2], [3,4])
println(p)
end
您将使用算法替换println
。如果获得所有组合的集合很重要,您也可以使用collect
。
答案 1 :(得分:1)
不是您展示的确切符号,但理解可能有用。
julia> a=[1, 2];
julia> b=[3, 4];
julia> [[i, j] for j in b, i in a]
2x2 Array{Any,2}:
[1,3] [2,3]
[1,4] [2,4]
julia> [[i, j] for j in b, i in a][:]
4-element Array{Any,1}:
[1,3]
[1,4]
[2,3]
[2,4]