Clojure - 我如何计算入口地图的矢量

时间:2013-10-19 14:58:30

标签: clojure

我如何计算移动和网络访问权限,从地图列表中丢弃零值?输出应该是这样的“统计移动= 1 web = 2”,但所有其他语言都可以通过简单的i ++解决,但是如何在clojure中。谢谢。

        def data [{:name "app1" :type "mobile" }
        {:name "site1" :type "web" }
        {:name "site1" :type "web" }
        {:name "boot" :type nil }]

2 个答案:

答案 0 :(得分:7)

(frequencies (map :type data))

给出

{"mobile" 1, "web" 2, nil 1}

答案 1 :(得分:1)

user=> (for [[k v] (group-by :type data) :when k] [k (count v)])
(["mobile" 1] ["web" 2])