【发布时间】:2018-11-06 22:53:37
【问题描述】:
我有一个数组字典,我想将其转换为字典数组,其中每个字典都将具有来自数组字典的唯一组合。理想情况下,会有一个解决方案可以使用任意数量的 Dict 键,并以与 R 的 expand_grid 类似的方式工作(但适用于 Dicts 而不是 DataFrames)。在下面的示例中,我展示了一个我想将其转换为字典数组的示例字典。
d = Dict{String,Array{Int}}(["a", "b", "c"] .=> [[1,2,3], [4], [5,6]])
desired_result = Array{Dict{String,Int}}([Dict{String,Int}(["a", "b", "c"] .=> [1,4,5]),
Dict{String,Int}(["a", "b", "c"] .=> [1,4,6]),
Dict{String,Int}(["a", "b", "c"] .=> [2,4,5]),
Dict{String,Int}(["a", "b", "c"] .=> [2,4,6]),
Dict{String,Int}(["a", "b", "c"] .=> [3,4,5]),
Dict{String,Int}(["a", "b", "c"] .=> [3,4,6])])
当然,一种方法是附加到带有嵌套 for 循环的数组,但如果有更优雅的方法来做到这一点,那就太好了。
【问题讨论】:
标签: arrays dictionary julia