DuckDB C-level bindings for tech.ml.dataset.
Current datatype support:
Example:
user> (require '[tech.v3.dataset :as ds])
nil
user> (require '[tmducken.duckdb :as duckdb])
nil
user> (duckdb/initialize!)
10:04:14.814 [nREPL-session-635e9bc8-2923-442b-9fad-da547210617b] INFO tmducken.duckdb - Attempting to load duckdb from "/home/chrisn/dev/cnuernber/tmducken/binaries/libduckdb.so"
true
user> (def stocks
(-> (ds/->dataset "https://github.com/techascent/tech.ml.dataset/raw/master/test/data/stocks.csv" {:key-fn keyword})
(vary-meta assoc :name :stocks)))
#'user/stocks
user> (def db (duckdb/open-db))
#'user/db
user> (def conn (duckdb/connect db))
#'user/conn
user> (duckdb/create-table! conn stocks)
"stocks"
user> (duckdb/insert-dataset! conn stocks)
560
user> (ds/head (duckdb/sql->dataset conn "select * from stocks"))
_unnamed [5 3]:
| symbol | date | price |
|--------|------------|------:|
| MSFT | 2000-01-01 | 39.81 |
| MSFT | 2000-02-01 | 36.35 |
| MSFT | 2000-03-01 | 43.22 |
| MSFT | 2000-04-01 | 28.37 |
| MSFT | 2000-05-01 | 25.45 |
DuckDB C-level bindings for tech.ml.dataset. Current datatype support: * boolean, all numeric types int8->int64, uint8->uint64, float32, float64. * string * uuid * LocalDate, Instant column types. Example: ```clojure user> (require '[tech.v3.dataset :as ds]) nil user> (require '[tmducken.duckdb :as duckdb]) nil user> (duckdb/initialize!) 10:04:14.814 [nREPL-session-635e9bc8-2923-442b-9fad-da547210617b] INFO tmducken.duckdb - Attempting to load duckdb from "/home/chrisn/dev/cnuernber/tmducken/binaries/libduckdb.so" true user> (def stocks (-> (ds/->dataset "https://github.com/techascent/tech.ml.dataset/raw/master/test/data/stocks.csv" {:key-fn keyword}) (vary-meta assoc :name :stocks))) #'user/stocks user> (def db (duckdb/open-db)) #'user/db user> (def conn (duckdb/connect db)) #'user/conn user> (duckdb/create-table! conn stocks) "stocks" user> (duckdb/insert-dataset! conn stocks) 560 user> (ds/head (duckdb/sql->dataset conn "select * from stocks")) _unnamed [5 3]: | symbol | date | price | |--------|------------|------:| | MSFT | 2000-01-01 | 39.81 | | MSFT | 2000-02-01 | 36.35 | | MSFT | 2000-03-01 | 43.22 | | MSFT | 2000-04-01 | 28.37 | | MSFT | 2000-05-01 | 25.45 | ```
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close