私はclojureが初めてで、これを正しく行いたいと思っています。2 つの CSV ファイルからの日付スタンプ付きデータの 2 つのデータ ソースがあります。私はそれらをベクトル形式のベクトルに入れました。データの結合(外部結合)のようなものをしたいと思います。
;--- this is how I am loading the data for each file.... works great ---
(def csvfile (slurp "table.csv"))
(def csvdat (clojure.string/split-lines csvfile))
(def final (vec (rest (map (fn [x] (clojure.string/split x #",")) csvdat))))
CSV ファイル 1: 日付 value1 value2 value3
CSV ファイル 2: 日付 valueA valueB valueC
ベクトル形式の結果のベクトル: 日付 値1 値2 値3 値A 値B 値C
私はいくつかの醜いアイデアを持っています。最高の醜いアイデアを実行したいだけです。:)
オプション 1: シーケンス内の一意の時間のセットを取得し、ベクトルの 2 つのベクトルからすべてのデータをベクトルの新しいベクトルにマップします オプション 2: ベクトルの 2 つのベクトルから新しいベクトルへのマップを行うことができる巧妙な方法はありますかベクトルの(私の経験で話すことができるよりも高度なマッピング)
「結合」を行う最もクロージュアのアイドマティックな方法は何ですか? 私は地図をやるべきですか?結合されたデータの行の下にウィンドウ(行のグループ)を移動するなど、csvが結合された後に多くの範囲計算を行うため、ベクトルが好きです。