visidata - 终端电子表格

SKILL研究检索
研究检索 未标注权限 许可证不明确
安装这个技能

visidata (saulpw/visidata) 终端交互式电子表格——CSV/TSV/Excel/JSON/JSONL/SQLite/Parquet 透视表、频数分布、快速 ASCII 绘图、多表连接、列类型转换。不想装 Excel 或 Jupyter 时快速看数据。

一句话选型结论

按资料字段整理

visidata - 终端电子表格是研究检索类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类研究检索 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_8170ea13/visidata
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

研究检索
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_8170ea13仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791625049
正文体量12.9 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
查资料并整理出处

让模型按主题查资料,并把引用来源整理成清单。

网页与文献要点提炼

把长文、论文、网页压成能直接看的要点。

竞品与行业汇总

按关键词汇总竞品动态与行业信息。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在研究检索场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
visidata - 终端电子表格当前 未标注权限 未标注 未标注 未标注 有
寻找技能 浏览器控制 GitHub 仓库 3120.0 万 Codex、Claude、Cursor 有
自我改进 Agent 接触敏感数据 ClawHub 市场 1646.4 万 OpenClaw 有
灵魂追踪 联网访问 GitHub 仓库 758.9 万 Codex、Claude、Cursor 有
自我完善 联网访问 ClawHub 市场 682.9 万 OpenClaw 有
微软代工厂 调用外部服务 GitHub 仓库 661.4 万 Codex、Claude、Cursor 有

SKILL.md 全文

12.9 KB
模型实际读到的说明书原文,来自技能仓库

visidata - 终端电子表格

技能脚本入口

本技能附带两套等价包装脚本(Unix .sh + Windows PowerShell .ps1),提供友好子命令入口与安装自检,免去记忆原始参数。

macOS / Linux(bash):

bash scripts/visidata-skill.sh <subcommand> [args...]
# 查看完整用法与示例
bash scripts/visidata-skill.sh help

Windows(PowerShell):

.\scripts\visidata-skill.ps1 <subcommand> [args...]
# 若被执行策略拦截,用下面这种调用绕过:
powershell -ExecutionPolicy Bypass -File scripts\visidata-skill.ps1 <subcommand> [args...]

可用子命令: open、stdin、python、sheet-help

脚本选择规则: macOS / Linux 用 .sh;Windows 用 .ps1。两者子命令完全一致。

> 脚本仅作便捷封装,最终调用系统的 visidata 二进制;运行前请确保已安装对应工具(安装方式见下文各节)。说明:SkillHub 不支持 .cmd / .bat 文件类型,故不附带 Windows cmd 版;无 PowerShell 的环境可用 Git Bash 运行 .sh 版。个别依赖 Unix 管道工具的子命令(如 gron 的 sed / fzf)在 Windows 下建议用 Git Bash 运行 .sh 版。

这是什么

visidata (saulpw/visidata, 8.5k ⭐) 是一个交互式终端电子表格多功能工具。支持 CSV、TSV、Excel (.xlsx/.xls)、JSON、JSONL、SQLite、Parquet、HDF5 等格式。提供类 Excel 的交互界面:透视表、频数分布、列统计、快速绘图、列类型转换、行过滤、正则搜索、多表连接等。

  • GitHub: https://github.com/saulpw/visidata
  • 文档: https://visidata.org/docs/
  • Python 编写,单命令 vd 启动,键盘驱动,无鼠标依赖

何时使用我

当用户出现以下意图时加载此技能:

  • "visidata"、"vd 命令"、"终端电子表格"、"终端看 CSV/Excel"
  • "交互式数据探索"、"透视表"、"频数分布"、"列统计"
  • "CSV/Excel 快速绘图"、"终端画图"、"数据可视化"
  • "多文件对比/连接"、"Sheet 间跳转"
  • "列类型转换"、"数据清洗预览"
  • "正则搜索/过滤行"、"大文件分页浏览"
  • "JSON/JSONL 展平查看"、"SQLite 表浏览"
  • "不想装 Excel/Jupyter 只想快速看数据"

核心能力

1. 启动与基础导航

# 打开各种格式
vd data.csv
vd data.xlsx
vd data.json
vd data.jsonl
vd data.sqlite
vd data.parquet

# 打开多文件 (每个文件一个 sheet)
vd file1.csv file2.csv file3.xlsx

# 从 stdin 读取
cat data.csv | vd -
curl -s api.example.com/data.csv | vd -

# 启动时指定分隔符/编码
vd -d ';' data.csv      # 分号分隔
vd -e utf-16 data.csv   # 编码

2. 界面与导航 (键盘驱动)

┌─────────────────────────────────────────────┐
│ Sheet 名称  │  行号  │  列类型  │  数据预览  │
├─────────────────────────────────────────────┤
│ 键盘操作:                                    │
│  ↑↓←→ / j/k/h/l    移动光标                    │
│  Ctrl+F / /        搜索 (正则支持)             │
│  n / N             下一个/上一个匹配           │
│  g / G             跳转首行/末行               │
│  数字 + g          跳转指定行                  │
│  Space             选中/取消选中行             │
│  Ctrl+A            全选                        │
│  q / Ctrl+C        退出 / 强制退出             │
└─────────────────────────────────────────────┘

3. 列操作 (核心功能)

列光标下操作:
  ^ (Shift+6)        切换列类型: int/float/str/date/bool/decimal
  &                  列统计摘要 (均值、标准差、唯一值数等)
  |                  频数分布 (值计数、条形图)
  _                  列重命名
  } / {              列右移/左移
  -                  隐藏列
  =                  显示所有隐藏列
  #                  显示列号

行光标下操作:
  !                  反选行
  d                  删除选中行
  y                  复制选中行到新 sheet
  s                  排序 (当前列)
  S                  反向排序

4. 透视表 (Pivot Table) - 杀手级功能

在行光标下:
  ^ (Shift+6)        将当前列设为行标签
  &                  将当前列设为值字段 (聚合)
  |                  将当前列设为列标签

组合示例:
  1. 光标选 "region" 列,按 ^ 设为行标签
  2. 光标选 "product" 列,按 | 设为列标签
  3. 光标选 "sales" 列,按 & 设为值 (默认求和)
  4. 自动生成透视表新 sheet!

聚合函数切换 (值字段光标下):
  a  - sum (求和)
  m  - mean (平均)
  n  - count (计数)
  v  - variance (方差)
  d  - stddev (标准差)
  i  - min (最小)
  x  - max (最大)
  u  - unique (唯一值数)

5. 频数分布与快速绘图

列光标下:
  |                  频数分布表 (值、计数、百分比、累积%)

  在频数分布 sheet 中:
  g                  绘制条形图 (ASCII/Unicode)
  G                  绘制直方图 (数值列)
  p                  绘制饼图

数值列直接绘图:
  g                  直方图
  G                  箱线图

6. 多 Sheet 管理

:                    命令模式
  :open file.csv     打开新文件为新 sheet
  :sheet 0           切换到 sheet 0
  :sheet name        按名切换
  :sheets            列出所有 sheet
  :join other_sheet  连接当前 sheet 与另一个 sheet
  :save output.csv   保存当前 sheet
  :saveall           保存所有 sheet
  :quit              退出

7. 行过滤与变换

  |                  过滤器模式 (类 SQL WHERE)
    输入表达式如:age > 30 and status == "active"
    支持: == != < > <= >= in not in and or not ( ) 正则 =~

  z                  撤销上一步操作
  Z                  重做

  列光标下按 =        计算新列 (表达式)
    如:total = price * qty
    如:full_name = first + " " + last

8. 数据导出

  :save file.csv           保存为 CSV
  :save file.xlsx          保存为 Excel
  :save file.json          保存为 JSON
  :save file.jsonl         保存为 JSON Lines
  :save file.sqlite        保存为 SQLite (建表)
  :save file.parquet       保存为 Parquet
  :save file.tsv           保存为 TSV
  :save file.html          保存为 HTML 表格

  选中行导出:
  选中行 → y (复制到新 sheet) → :save selected.csv

9. 连接多表 (Join)

# 在 sheet A 中:
:join sheetB
# 交互式选择:
#   - 左键 (当前 sheet)
#   - 右键 (目标 sheet)
#   - 连接键列
#   - 连接类型: inner/left/right/outer
# 生成新 sheet

10. Python API (脚本化)

import visidata as vd

# 编程式加载
sheet = vd.open_source('data.csv')

# 操作列
sheet.columns['price'].type = vd.FloatType
sheet.columns['date'].type = vd.DateType('%Y-%m-%d')

# 透视表
pivot = sheet.pivot(
    rows=['region'],
    cols=['product'],
    vals=['sales'],
    aggfuncs={'sales': 'sum'}
)

# 导出
pivot.save('pivot.csv')

典型工作流示例

场景 1:销售数据快速分析 (5 分钟出报告)

# 1. 打开数据
vd sales_2024.csv

# 2. 看列统计 (光标在任意列按 &)
#    看到:总行数、唯一值、空值、均值、标准差、最小/最大

# 3. 按区域+产品透视销售额
#    选 region 列 -> ^ (行标签)
#    选 product 列 -> | (列标签)
#    选 amount 列 -> & (值,求和)
#    自动生成透视表!

# 4. 画直方图看分布
#    在透视表中选 amount 列 -> g (直方图)

# 5. 导出透视表给老板
#    :save pivot_report.xlsx

场景 2:脏数据清洗预览

# 1. 打开脏数据
vd dirty_export.csv

# 2. 看每列类型和异常 (按 & 看统计)
#    发现:price 列有 "N/A"、"-" 字符串混在数字里

# 3. 过滤异常行
#    | (过滤器) -> price =~ "^[0-9.]+$"
#    只保留纯数字价格行

# 4. 转换列类型
#    选 price 列 -> ^ -> 选 float

# 5. 保存清洗后数据
#    :save clean_data.csv

场景 3:多源数据对比 (CSV + Excel + JSON)

# 1. 一次打开多文件
vd actuals.csv budget.xlsx forecast.json

# 2. 在各 sheet 间切换
#    :sheets 列出所有
#    :sheet 0/1/2 切换

# 3. 连接对比
#    在 actuals sheet: :join budget
#    选连接键 (如 department)
#    生成对比 sheet

# 4. 算差异列
#    在对比 sheet 选空列 -> = -> 表达式: actual - budget

场景 4:日志/时序数据探索

# 1. 打开 JSON Lines 日志
vd app.log.jsonl

# 2. 展平嵌套 JSON (自动处理)
#    复杂嵌套自动展开为多列

# 3. 按时间排序
#    选 timestamp 列 -> s (排序)

# 4. 筛选错误
#    | (过滤器) -> level == "ERROR"

# 5. 按小时聚合
#    选 timestamp 列 -> ^ (行标签,自动按小时分组)
#    选 level 列 -> | (列标签)
#    选任意列 -> & (计数)

场景 5:SQLite 数据库浏览

# 1. 直接打开数据库
vd analytics.db

# 2. 列出所有表 (每个表一个 sheet)
#    :sheets 看到: users, orders, products, events...

# 3. 进入 orders 表
#    :sheet orders

# 4. 连接 users 表查询用户名
#    :join users
#    连接键: user_id

# 5. 导出查询结果
#    :save user_orders.csv

快捷键速查表

类别 按键 功能
导航 ↑↓←→ / j k h l 移动光标
g / G 首行/末行
数字+g 跳转行号
/ / Ctrl+F 搜索 (正则)
选中 Space 选中/取消行
Ctrl+A 全选
! 反选
列操作 ^ 切换类型/设为行标签
& 列统计/设为值字段
| 频数分布/设为列标签/过滤器
_ 重命名列
} / { 列右移/左移
- / = 隐藏/显示列
行操作 s / S 升序/降序排序
d 删除选中行
y 复制选中行到新 sheet
z / Z 撤销/重做
Sheet : 命令模式
:sheet N 切换 sheet
:join 连接表
:save 保存
q 退出

安装方式

# pip (推荐,最新版)
pip install visidata
# 或隔离环境
pipx install visidata

# macOS (Homebrew)
brew install visidata

# Linux (发行版包可能较旧)
apt install visidata    # Debian/Ubuntu
dnf install visidata    # Fedora
pacman -S visidata      # Arch

# Docker
docker run --rm -it -v "${PWD}":/data saulpw/visidata data.csv

进阶配置

# 配置文件 ~/.visidatarc (Python 语法)
# 示例:
options.default_floating_type = 'decimal'  # 金融数据用 Decimal
options.precision = 4                       # 默认小数位
options.theme = 'dark'                      # 主题

# 自定义命令
def my_custom_command(vd, sheet):
    sheet.add_column('checksum', lambda row: hash(str(row)))
vd.bindkey('c', 'my_custom_command')

故障排查

问题 解决方案
"command not found: vd" pipx install visidata 或检查 PATH
启动慢/内存爆 大文件先用 xsv sample 10000 big.csv | vd - 采样预览
编码乱码 vd -e gbk file.csv 指定编码
列类型识别错 手动按 ^ 切换类型,或预处理 xsv cast
透视表生成慢 先采样或筛选减少行数,再透视
绘图显示方块 终端需支持 Unicode,设置 LANG=en_US.UTF-8
JSON 嵌套太深 visidata 自动展平,深层用 dasel/jq 先提取

相关技能

  • xsv - 非交互式极速 CSV 统计/切片/连接 (管道友好)
  • miller - awk 风格命名索引数据处理 (脚本化转换)
  • sqlite-utils - CSV 导入 SQLite 做复杂 SQL
  • dasel - 统一选择器跨格式查询
  • fx - JSON 交互式探索 (visidata 也能看 JSON)
  • yq - 格式转换 (visidata 导出前可先转格式)

技能版本: 1.0.0 | 作者: asdw741111 | 适用平台: OpenCode, Claude Code, Cursor, Codex CLI, Windsurf, Gemini CLI

常见问题

5 问
答案由本站依据条目字段整理
visidata - 终端电子表格怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_8170ea13/visidata。安装方式为未标注。装完刷新技能列表或重开客户端。

visidata - 终端电子表格支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

visidata - 终端电子表格权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

visidata - 终端电子表格收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

visidata - 终端电子表格用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。