I want to transform one map of values to another map with the same keys but with a function applied to the values. I would think there was a function for doing this in the c
Here is a fairly typical way to transform a map.
zipmap takes a list of keys and a list of values and "does the right thing" producing a new Clojure map. You could also put the map around the keys to change them, or both.
(zipmap (keys data) (map #(do-stuff %) (vals data)))
or to wrap it up in your function:
(defn map-function-on-map-vals [m f]
(zipmap (keys m) (map f (vals m))))