This package browser is in early development. Mind the rough edges.


Command-line tools for working with CSV

csvkit is a suite of command-line tools for converting to and working with CSV. It provides the following commands:

  • Input:

    • in2csv: Convert various formats to CSV.

    • sql2csv: Execute SQL commands on a database and return the data as CSV.

  • Processing:

    • csvclean: Remove common syntax errors.

    • csvcut: Filter and truncate CSV files.

    • csvgrep: Filter tabular data to only those rows where certain columns contain a given value or match a regular expression.

    • csvjoin: Merges two or more CSV tables together using a method analogous to SQL JOIN operation.

    • csvsort: Sort CSV files.

    • csvstack: Stack up the rows from multiple CSV files, optionally adding a grouping value to each row.

  • Output and analysis:

    • csvformat: Convert a CSV file to a custom output format.

    • csvjson: Converts a CSV file into JSON or GeoJSON.

    • csvlook: Renders a CSV to the command line in a Markdown-compatible, fixed-width format.

    • csvpy: Loads a CSV file into a agate.csv.Reader object and then drops into a Python shell so the user can inspect the data however they see fit.

    • csvsql: Generate SQL statements for a CSV file or execute those statements directly on a database.

    • csvstat: Prints descriptive statistics for all columns in a CSV file.


Install the latest version of csvkit as follows:

guix install csvkit

Or install a particular version:

guix install csvkit@1.1.1

You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the guix shell documentation for more information.