大きな csv ファイルを解析しており、その最初の行をレコードのキーとして使用しています。したがって、次のような csv ファイルの場合:
header1,header2
foo,bar
zoo,zip
私は次のような怠惰なseqになります:
({:header1 "foo" :header2 "bar"},
{:header1 "zoo" :header2 "zip"})
コードは正常に動作していますが、次の関数で「行」の頭を保持しているかどうかはわかりません。
(defn csv-as-seq [file]
(let [rdr (clojure.java.io/reader file)]
(let [lines (line-seq rdr)
headers (parse-headers (first lines))]
(map (row-mapper headers) (rest lines)))))
誰か明確にしてくれませんか?