Skip to content
Novus Examples
tsv473 B

Tab-Separated Values (TSV)

A tab-separated values file with a header and 20 rows — for testing TSV parsing and delimiter handling.

Preview — first 22 linestsv
id	name	city	amount
1	Grace	Paris	516.7
2	Alan	Berlin	950.96
3	Katherine	Toronto	152.72
4	Linus	Austin	949.16
5	Radia	Oslo	318.71
6	Tim	Tokyo	429.09
7	Barbara	Nairobi	829.43
8	Dennis	London	415.11
9	Margaret	Paris	554.1
10	Ada	Berlin	37.28
11	Grace	Toronto	755.98
12	Alan	Austin	542.76
13	Katherine	Oslo	336.43
14	Linus	Tokyo	790.54
15	Radia	Nairobi	310.16
16	Tim	London	458.96
17	Barbara	Paris	142.7
18	Dennis	Berlin	409.08
19	Margaret	Toronto	211.42
20	Ada	Austin	269.69

Specifications

Rows
20
Columns
4
Delimiter
tab
Encoding
UTF-8

What is a .tsv file?

TSV (Tab-Separated Values) is a plain-text tabular format like CSV but using tab characters as field delimiters. Because tabs rarely appear in data, it often needs less quoting than CSV. It is common in bioinformatics, logs, and command-line data workflows.

How to use this file

Use an example TSV to test tab-delimited parsing, header and column handling, and pipelines that ingest tabular data from Unix tools or scientific datasets.

How to use this file for testing

“Tab-Separated Values (TSV)” is a deterministic Novus Examples fixture for CSV parsing. Clean and deliberately messy CSVs — quoted commas, embedded newlines, ragged rows, odd delimiters, and encodings.

Documented properties for this file: 20 rows · 4 columns · UTF-8. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.

Feed the file to your parser and assert it handles the documented quirks — quoted delimiters, embedded newlines, ragged rows, or invalid syntax; the valid↔invalid distinction is labelled in the title.

Code examples

import pandas as pd

df = pd.read_csv("data.tsv", sep="\t")
print(df.head())

Generated by generation/data_tabular.py. Free for any use, no attribution required — license.