【发布时间】:2021-07-07 15:51:12
【问题描述】:
我有一个看起来像这样的数据集
[{1 "a"} {2 "b"} {3 "c"}]
我想把它变成一个看起来像这样的累积地图
{1 "a" 3 "b" 6 "c"}
我认为我目前的方法是冗长的。到目前为止,我想出了
(reduce
(fn [sum item]
(assoc sum (+ (reduce + (keys sum))
(key (first item)))
(val (first item))))
split-map)
但是键上的加法不正确。有谁知道我可以如何改进这一点?
【问题讨论】:
-
如果您的输入数据中有任何 0,您的问题就无法解决。您确定要输出为地图而不是成对序列吗?
标签: clojure