はじめに

CSVファイルを扱うとき、内容を把握したちするときは Jupyter Notebook を使うと便利なのですが、ターミナルでの作業は中心であるときは、そのためだけに Jupyter Notebook の環境を整えたり、起動するのは少し面倒です。コマンドラインでCSVファイルを簡単に解析することができるようなツールがあればと思うことがありませんか?

この資料はそうしたときに非常に便利な xsv について使用方法を説明しています。

xsvについて

xsv はCSVファイルの加工、分析を高速に処理することができるRustで実装されたツールです。

GitHub - BurntSushi/xsv: A fast CSV command line toolkit written in Rust.

インストール

xsv のインストールは cargo を使って行います。

% cargo install xsv

ヘルプメッセージは xsv --help と実行すると参照することができます。

% xsv --help
Usage:
    xsv <command> [<args>...]
    xsv [options]

Options:
    --list        List all commands available.
    -h, --help    Display this message
    <command> -h  Display the command help message
    --version     Print version info and exit

Commands:
    cat         Concatenate by row or column
    count       Count records
    fixlengths  Makes all records have same length
    flatten     Show one field per line
    fmt         Format CSV output (change field delimiter)
    frequency   Show frequency tables
    headers     Show header names
    help        Show this usage message.
    index       Create CSV index for faster access
    input       Read CSV data with special quoting rules
    join        Join CSV files
    sample      Randomly sample CSV data
    search      Search CSV data with regexes
    select      Select columns from CSV
    slice       Slice records from CSV
    sort        Sort CSV data
    split       Split CSV data into many files
    stats       Compute basic statistics
    table       Align CSV data into columns

サブコマンド

xsv には次のサブコマンドがあります。