SYSTEM TIME --:--:-- IST · 152 TOOLS LIVE · RUNS IN YOUR BROWSER — NOTHING UPLOADED
← Back to DATA TOOLS
DATA TOOLS

CSV Analysis Tool (EDA)

Upload a CSV and get automatic column types, missing-value counts, and statistics — free, runs in your browser.

Analyzes up to 50,000 rows. Nothing is uploaded — the file is read and processed entirely in your browser.

About this tool

Upload a CSV file and this automatically profiles every column — detecting whether each one is a whole number, a decimal, a yes/no flag, or free-form text, then computing the statistics that actually apply to that type. Numeric columns get mean, median, min, max, standard deviation, and quartiles; text columns get the most common value and how many distinct values appear, flagging columns that look like unique IDs rather than genuine categories.

This is a first-pass exploratory data analysis (EDA) step — the kind of profiling you'd normally write a few lines of pandas code for, done instantly without leaving the browser. It also reports how many rows had the wrong number of fields (a common sign of a malformed export), separately from genuinely missing values within an otherwise valid row.

Frequently asked questions

What counts as a "missing" value?

An empty cell, or a row where that column’s value is absent entirely (for example, a row with fewer fields than the header row expects).

How is a column’s type decided?

Every non-missing value in the column is checked: if all of them are whole numbers, it’s classified as an integer column; if all are numbers but at least one has a decimal point, it’s a decimal column; if every value is exactly "true" or "false", it’s a yes/no column; otherwise it’s treated as text.

Why does it flag some text columns as "likely an ID"?

When over 90% of a column’s values are unique, it’s more likely an identifier (an order number, a row ID) than a genuine category you’d want to group or count by — this is a heuristic, not a certainty, but it’s usually right.

What are Q1 and Q3?

The 25th and 75th percentiles — the values below which a quarter, and three-quarters, of the data falls. Together with the median (the 50th percentile), they show the spread of the middle half of your data, computed here using the same linear interpolation method as pandas’ own .describe().

Why is there a 50,000-row limit?

Computing statistics like the median and quartiles requires sorting each numeric column, which gets noticeably slower as both row and column count grow — 50,000 rows was tested to stay fast even with many numeric columns. For a larger file, try trimming it down or sampling a subset first.

What’s in the sample CSV?

A simulated 10,000-row e-commerce order list — a unique order ID, customer age, purchase amount, city, product category, and returning-customer flag — covering every column type this tool detects, so you can see what it does before uploading your own data.

What does the distribution view show?

A histogram of that column’s values, plus how many actually fall within 1, 2, and 3 standard deviations of the mean — shown next to what a perfectly normal (bell-curve) distribution would predict, so you can see at a glance whether your data is roughly normal, skewed, or has real outliers.

What does the correlation coefficient mean?

It measures how closely two numeric columns move together in a straight-line relationship, from -1 (perfectly opposite) through 0 (no linear relationship) to +1 (perfectly together). It only captures straight-line relationships — two columns can be strongly related in a curved or more complex way and still show a low correlation number.

Why does correlation only work on numeric columns?

The calculation is fundamentally about how two sets of numbers move together — there’s no meaningful way to compute it directly for text categories like city names, so only integer and decimal columns are offered.

Related tools