我有一系列地图。
;; input
[{:country "MX", :video 12345, :customer "cid1"}
{:country "US", :video 12345, :customer "cid2"}
{:country "MX", :video 54321, :customer "cid1"}]
我想将其转换为多图。我想生成。
;; output
{"cid1"
{:actions
[{:country "MX", :video 12345, :customer "cid1"}
{:country "MX", :video 12345, :customer "cid1"}]},
"cid2"
{:actions
[{:country "US", :video 12345, :customer "cid2"}]}}
我觉得我应该使用update-in
. 类似于......我只是没有弄清楚到底是什么some-fn-here
样子,我认为其他人可能有同样的问题。
(defn add-mm-entry
[m e]
(update-in m [(:customer e)] some-fn-here))
(def output (reduce add-mm-entry {} input))
我想在我工作的时候把它扔给社区。如果我在这里走错了路,请告诉我。