Utils for reading CSV (comma-separated-value) formatted files.
Utils for reading CSV (comma-separated-value) formatted files.
(attrs->entities attrs)
Inputs: [attrs :- tsk/Map] Returns: [tsk/Map]
Converts a map of attribute-vectors into a vector of entity-maps. Not lazy.
Inputs: [attrs :- tsk/Map] Returns: [tsk/Map] Converts a map of attribute-vectors into a vector of entity-maps. Not lazy.
(csv->attrs csv-input)
(csv->attrs csv-input opts)
Inputs: ([csv-input :- CsvInput] [csv-input :- CsvInput opts :- tsk/KeyMap]) Returns: tsk/KeyMap
[csv-input & {:as opts} ] Returns a map of attributes constructed from the columns of csv-input. The first line is assumed to be column label strings, which are (safely) converted into keywords. The returned map has one entry for each column label keyword. The corresponding value for each keyword is a vector of string data taken from each subsequent line in the file. See tupelo.csv/parse->entities for options. Not lazy.
Inputs: ([csv-input :- CsvInput] [csv-input :- CsvInput opts :- tsk/KeyMap]) Returns: tsk/KeyMap [csv-input & {:as opts} ] Returns a map of attributes constructed from the columns of csv-input. The first line is assumed to be column label strings, which are (safely) converted into keywords. The returned map has one entry for each column label keyword. The corresponding value for each keyword is a vector of string data taken from each subsequent line in the file. See tupelo.csv/parse->entities for options. Not lazy.
(csv->entities csv-input)
(csv->entities csv-input opts)
Inputs: ([csv-input :- CsvInput] [csv-input :- CsvInput opts :- tsk/KeyMap]) Returns: [tsk/Map]
[csv-input] [csv-input opts-map]
Returns a lazy sequence of maps constructed from csv-input. The first line is assumed to be column label strings, which are (safely) converted into keywords. String data from each subsequent line is paired with the corresponding column keyword to construct a map for that line. Default delimiter is the comma character (i.e. ,) but may be changed using the syntax such as:
(parse-csv->row-maps <csv-data-src> {:delimiter \}|)
to select the pipe character (i.e. |) as the delimiter.
<csv-data-source> is either a multi-line-string, or a java.io.Reader.
Inputs: ([csv-input :- CsvInput] [csv-input :- CsvInput opts :- tsk/KeyMap]) Returns: [tsk/Map] [csv-input] [csv-input opts-map] Returns a lazy sequence of maps constructed from csv-input. The first line is assumed to be column label strings, which are (safely) converted into keywords. String data from each subsequent line is paired with the corresponding column keyword to construct a map for that line. Default delimiter is the comma character (i.e. \,) but may be changed using the syntax such as: ``` (parse-csv->row-maps <csv-data-src> {:delimiter \}|) ``` to select the pipe character (i.e. \|) as the delimiter. <csv-data-source> is either a multi-line-string, or a java.io.Reader.
(csv->table csv-input)
(csv->table csv-input opts)
Inputs: ([csv-input :- CsvInput] [csv-input :- CsvInput opts :- tsk/KeyMap]) Returns: [[s/Str]]
Inputs: ([csv-input :- CsvInput] [csv-input :- CsvInput opts :- tsk/KeyMap]) Returns: [[s/Str]]
(entities->attrs entities)
Inputs: [entities :- [tsk/Map]] Returns: tsk/Map
Converts a sequence of entity-maps into a map of column-vectors. Not lazy.
Inputs: [entities :- [tsk/Map]] Returns: tsk/Map Converts a sequence of entity-maps into a map of column-vectors. Not lazy.
(entities->csv-force-quote entities)
Inputs: [entities :- [tsk/Map]] Returns: s/Str
Writes a sequence of EDN maps to a multi-line CSV string. Keys are output in sorted order. Optionally accepts a map-key conversion function
Inputs: [entities :- [tsk/Map]] Returns: s/Str Writes a sequence of EDN maps to a multi-line CSV string. Keys are output in sorted order. Optionally accepts a map-key conversion function
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close