3
我在朱莉婭有兩個詞典a1
和a2
。在Julia中通過對相同的鍵值進行求和來添加詞典
a1 = {"A"=>1, "B"=>2}
a2 = {"A"=>4, "B"=>1, "C"=>3}
我想結合它來得到這個。
final={"A"=>5, "B"=>3, "C"=>3}
在Python中,我將字典轉換爲收集計數器並將它們組合在一起。
我在朱莉婭有兩個詞典a1
和a2
。在Julia中通過對相同的鍵值進行求和來添加詞典
a1 = {"A"=>1, "B"=>2}
a2 = {"A"=>4, "B"=>1, "C"=>3}
我想結合它來得到這個。
final={"A"=>5, "B"=>3, "C"=>3}
在Python中,我將字典轉換爲收集計數器並將它們組合在一起。
看看DataStructures.jl計數器。
julia> using DataStructures: counter
julia> a1 = Dict{ASCIIString, Int64}("A"=>1, "B"=>2)
Dict{ASCIIString,Int64} with 2 entries:
"B" => 2
"A" => 1
julia> a2 = Dict{ASCIIString, Int64}("A"=>4, "B"=>1, "C"=>3)
Dict{ASCIIString,Int64} with 3 entries:
"B" => 1
"A" => 4
"C" => 3
julia> merge(counter(a1), counter(a2)).map
Dict{ASCIIString,Int64} with 3 entries:
"B" => 3
"A" => 5
"C" => 3
對於任何人在這個現在正在尋找,counter
不再是必要的 - 使用merge(+, a1, a2)
。
julia> a1 = Dict("A"=>1, "B"=>2)
Dict{String,Int64} with 2 entries:
"B" => 2
"A" => 1
julia> a2 = Dict("A"=>4, "B"=>1, "C"=>3)
Dict{String,Int64} with 3 entries:
"B" => 1
"A" => 4
"C" => 3
julia> merge(+, a1, a2)
Dict{String,Int64} with 3 entries:
"B" => 3
"A" => 5
"C" => 3