- スター
- 4,540
- フォーク
- 94
- 未解決の Issue
- 127
- 最終コミット
- 18 時間前
これは何?
xanは、シェルからCSVファイルを処理するためのコマンドラインツールです。プレビュー、検索、絞り込み、切り出し、ソート、重複排除、集計、表形式データの結合などを行う、多数の組み合わせ可能なサブコマンドを備えており、パイプラインで連結して実行できます。
Rustで書かれ、SIMD対応のCSVパーサーを中核としています。一部の計算は複数スレッドで並列化されているため、ギガバイトからテラバイト規模のファイルも処理できます。また、CSVの各行に特化した独自の式言語を備え、filter、map、transform、agg、groupbyなどのコマンドで利用できます。JSON、NDJSON、Excel、Parquetなどの形式との相互変換にも対応しています。
このプロジェクトはxsvのフォークとして始まり、SciencesPoのmédialabによって大幅に書き直されました。Webデータ収集や社会科学分析向けの機能として、計量言語学、グラフ関連のユーティリティ、HTMLスクレイピングなどを備えています。手早くデータを調べられるよう、ターミナル上での表示、ヒストグラム、プロット、ヒートマップも利用できます。
主な機能
- 01シェルからCSVファイルをプレビュー、検索、絞り込み、切り出し、ソート、重複排除する。
- 02独自の式言語を使ってデータを集計・グループ化する。
- 03pivotとunpivotを使ってテーブルを結合、マージ、分割、再構成する。
- 04CSVとJSON、NDJSON、Excel、Parquetなどの形式を相互に変換する。
- 05gzipおよびzstdで圧縮されたファイルや、VCF、SAM、BEDなど一般的なバイオインフォマティクス形式を読み込む。
- 06ターミナル上にヒストグラム、散布図、ヒートマップを描画する。
ユースケース
- スプレッドシートに読み込まずに、大きなCSVエクスポートをすばやく確認・絞り込む。
- 表形式データのクリーニングや集計を行う、再利用可能なシェルパイプラインを構築する。
- アンケートやWebクロールのデータセットから度数表や記述統計量を算出する。
- スクリプトでCSVとJSONやExcelの形式を相互変換する。
クイックスタート
- 1
Cargoでxanをインストールする
cargo install xan --locked - 2
サンプルコーパスをダウンロードする
curl -LO https://github.com/medialab/corpora/raw/master/polarisation/medias.csv - 3
ターミナルでファイルをプレビューする
xan view medias.csv
トピック
よくある質問
- xan とは?
- シェル上でCSVやTSVをプレビュー、絞り込み、集計、結合、変換できるRust製コマンドラインツール。 xanは、シェルからCSVファイルを処理するためのコマンドラインツールです。プレビュー、検索、絞り込み、切り出し、ソート、重複排除、集計、表形式データの結合などを行う、多数の組み合わせ可能なサブコマンドを備えており、パイプラインで連結して実行できます。
- xan は無料で使えますか?ライセンスは?
- xan は Unlicense ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- xan は今もメンテナンスされていますか?
- 活発にメンテナンス中。xan の最終コミットは 2026年10月20日 です。
- xan は何に使えますか?
- スプレッドシートに読み込まずに、大きなCSVエクスポートをすばやく確認・絞り込む。 表形式データのクリーニングや集計を行う、再利用可能なシェルパイプラインを構築する。 アンケートやWebクロールのデータセットから度数表や記述統計量を算出する。 スクリプトでCSVとJSONやExcelの形式を相互変換する。
- xan のインストール方法は?
- Cargoでxanをインストールする: cargo install xan --locked サンプルコーパスをダウンロードする: curl -LO https://github.com/medialab/corpora/raw/master/polarisation/medias.csv ターミナルでファイルをプレビューする: xan view medias.csv
- xan はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/medialab/xan
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
CSV、Parquet、JSON、Excel、SQLiteなどの表形式データを閲覧・クエリできる軽量なターミナル(TUI)アプリ。
Warpは、ターミナルを基盤とするエージェント型開発環境で、組み込みのコーディングエージェントや、独自のCLIエージェントを利用できます。
シンタックスハイライト、Gitの変更箇所表示、自動ページャー機能を備えた、ターミナル向けのcat(1)クローン。
ファイルやディレクトリを名前で探せる、高速で使いやすい Unix の find コマンド代替 CLI。