假設我具有相同的文件名,放置在五個不同的子文件夾中。有問題的文件在所有文件夾中具有相同的名稱,但具有不同的值。函數參數作爲Clojure中文件的路徑的一部分
假設我的文件名爲test.csv
。我的文件夾是A1,A2,A3,A4
和A5
。
我的數據讀取結構看起來像這樣:
(defn my-data [folder]
(loop [SUB-FOLDER (str 'folder)
X []
data (with-open [file (clojure.java.io/reader "./resources/SUB-FOLDER/test.csv")]
(doall (csv/read-csv file)))]
(def row (first data))
(if (nil? row)
[(lazy-seq X)]
(recur (conj X (map #(Float/parseFloat %) row))
(rest data)))))
我會調用該函數,以便
(def Y (map vec (get (my-data A1) 0)))
當我試圖訪問該文件test.csv
在子文件夾A1
這我作爲參數傳遞給我的csv-read函數。
現在顯然上面的代碼不起作用,但它提供了我試圖實現的內容的概述。
怎麼能讓最小的例子工作?
謝謝。
你的代碼有很多問題。首先,你試圖讀取一個名爲./resources/SUB-FOLDER/test.csv的文件。讀取csv文件通常非常簡單,您可以舉一個文件內容的例子嗎? –
當然:這些文件只包含約200行(六維)csv數據,如:232.2,100.5,12.2,23.0,12.2,90.2 – Astrid