Я пытаюсь извлечь набор значений из коллекции карт по определенным ключам.Например,
Ввод:
[
{:k1 "v1" :k2 "v2" :k3 "v3"}
{:k1 "v4" :k2 "v2"}
]
Предполагается, что получение набора значений осуществляется посредством: k1,: k2
Желаемый вывод:
#{"v1" "v2" "v4"}
Итак, мое решение -
(->> [{:k1 "v1" :k2 "v2" :k3 "v3"}
{:k1 "v4" :k2 "v2"}]
(map #(-> (select-keys % [:k1 :k2]) (vals) (set)))
(apply clojure.set/union))
Но я хочу знать лучшие способы.Что ты думаешь?