Skip to content

Add csv peek - #97

Open
CindyLiao1106 wants to merge 3 commits into
secretGeek:masterfrom
CindyLiao1106:add-csv-peek
Open

CindyLiao1106 wants to merge 3 commits into
secretGeek:masterfrom
CindyLiao1106:add-csv-peek

Conversation

@CindyLiao1106

Copy link
Copy Markdown

No description provided.

@CindyLiao1106

Copy link
Copy Markdown
Author

Thanks for maintaining this list — it's the reference I check whenever I need a CSV tool.

I've added csv-peek to the Tools section, placed right after QSV (keeping the command-line tools together).

What it is: a single-file, zero-dependency Python script that profiles a CSV/TSV from the terminal — the first question of any CSV task ("what is actually in this file?") answered in one command instead of five notebook cells:

$ csv-peek data.csv
columns   : 5
data rows : 12043
  #  name        text   null  0.0%  uniq 4201
  1  age         int    null 20.0%  uniq 3      min 29 · med 34 · max 41
  3  total_spend float  null 20.0%  uniq 3      min 12 · med 1062.25 · max 1234.5
  4  signup_date date   null  0.0%  uniq 4      2024-01-05×2 | 2024-02-11×1

⚠️  possible duplicate rows: 1
  • Per-column type inference (int/float/date/text), null %, unique count, min/median/max or top values
  • Flags duplicate rows with an example
  • Auto-detects , ; tab | delimiters; handles quoted fields with commas, BOM/UTF-8 issues, stdin, and large files via row sampling
  • Python 3.8+ standard library only — nothing to install, which is why I reach for it instead of spinning up pandas
  • MIT licensed · 7 unit tests (python3 -m unittest discover -s tests)

Repo: https://github.com/CindyLiao1106/csv-peek

I also added the matching row to awesomecsv.csv so the data file stays in sync — happy to adjust the wording, position, or the CSV format if you'd prefer it differently.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant