Scripts2026年7月13日·1 分钟阅读

VisiData — Terminal Spreadsheet Multitool for Data Exploration

An interactive terminal application for exploring, transforming, and analysing tabular data from CSV, JSON, SQLite, Postgres, and dozens of other formats.

Agent 就绪

先审查再安装

这个资产需要先审查。复制的指令会要求 Agent dry-run、列出写入项,确认后再继续。

Needs Confirmation · 64/100策略:需确认
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Established
入口
VisiData Overview
先审查命令
npx -y tokrepo@latest install 9b3d16bb-7eb7-11f1-9bc6-00163e2b0d79 --target codex

先 dry-run,确认写入项后再运行此命令。

Introduction

VisiData is a terminal-based tool for rapid exploration and manipulation of tabular data. It opens virtually any structured data format instantly and provides a keyboard-driven interface for sorting, filtering, aggregating, and joining datasets without writing code.

What VisiData Does

  • Opens CSV, TSV, JSON, SQLite, Postgres, Excel, Parquet, HDF5, and 30+ other formats
  • Provides instant frequency analysis, histogram, and pivot table generation
  • Supports regex search, column transformations, and Python expressions inline
  • Saves modified data back to any supported format
  • Handles datasets with millions of rows via lazy loading and streaming

Architecture Overview

VisiData is a pure-Python application built on the curses library. Each data source is loaded through a format-specific loader plugin that yields rows lazily. The sheet abstraction manages columns, types, and sort state. A command system maps single keystrokes to operations, and users can extend functionality with Python snippets in a .visidatarc file.

Self-Hosting & Configuration

  • Install via pip, pipx, conda, or your distro's package manager
  • No external dependencies for CSV/JSON; install optional packages for databases (psycopg2) or Parquet (pyarrow)
  • Customise keybindings and default options in ~/.visidatarc
  • Set options.color_default and theme options for terminal colour schemes
  • Use --play to replay saved command logs for reproducible analyses

Key Features

  • Opens any data format with a single command and no schema definition
  • Keyboard-driven workflow is faster than GUI tools for exploratory analysis
  • Frequency sheets and pivot tables are one keystroke away
  • Command logging enables fully reproducible data exploration sessions
  • Extensible via Python plugins and inline expressions

Comparison with Similar Tools

  • pandas — requires writing Python code; VisiData is interactive and visual
  • csvkit — focused on CSV command-line operations; VisiData adds an interactive TUI
  • Miller — streaming record processor; VisiData adds spreadsheet-style navigation
  • q — SQL on CSV files; VisiData supports SQL and many more formats interactively
  • Tad — GUI CSV viewer; VisiData runs in any terminal without a display server

FAQ

Q: Can it handle very large files? A: Yes. VisiData streams rows lazily and can handle multi-gigabyte files if sufficient memory is available for the visible window.

Q: Is it scriptable? A: Yes. Command logs can be saved and replayed, and .visidatarc supports arbitrary Python.

Q: Does it modify the source file? A: No. Changes exist in memory until you explicitly save to a file.

Q: What Python version is required? A: Python 3.8 or later.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产