       (make-dataset new-columns
                     new-data))))
 
-(defn drop-rows [dataset n]
+(defn drop-rows
   "Drops the first n rows from the CSV."
+  [dataset n]
   (map-rows dataset (partial drop n)))
 
-(defn take-rows [dataset n]
+(defn take-rows
   "Drops the first n rows from the CSV."
+  [dataset n]
   (map-rows dataset (partial take n)))
 
 (defn derive-column


  One advantage of this over using columns is that you can duplicate
  an arbitrary number of columns."

  (let [not-found-items (invalid-column-keys cols dataset)]
    (if (and (empty? not-found-items)
            (some identity cols))


(def _ "An alias for the identity function, for providing positional arguments to mapc." identity)

(defn mapc
  "Takes an array or a hashmap of functions and maps each to the key
  column for every row."
  [dataset fs]
  (let [fs-hash (if (vector? fs)
                    (zipmap (column-names dataset) fs)
                    fs)
