What Is Data? Rows, Columns, Types, and Missing Values
Data is not just numbers in a spreadsheet. Understanding structure, types, and quality is the foundation for everything else in data work and ML.
Why Vocabulary Matters More Than You Think
Most data literacy failures in professional settings are vocabulary failures. People use the same word to mean different things, misunderstand what a column represents, or miss that two datasets cannot be joined because they have different grains. These errors compound. A single vocabulary misunderstanding early in a project can produce weeks of incorrect analysis.
This module gives you the precise vocabulary you need to work with data clearly and to communicate accurately with data scientists and engineers.
The Anatomy of a Dataset
A dataset is a collection of observations organized into rows and columns, stored in a format like a CSV file, a database table, or a spreadsheet.
Rows (also called records or observations): Each row represents one instance of whatever the dataset is about. In a customer dataset, each row is one customer. In a transaction dataset, each row is one transaction. In a sensor reading dataset, each row is one reading at one point in time.
Columns (also called fields, features, or variables): Each column represents one property measured for every row. In a customer dataset, columns might be: customer_id, age, city, account_created_date, total_spend.
The grain of a dataset is the precise definition of what one row represents. "A customer" is imprecise. "One unique customer as they existed at the time of their most recent order" is precise. Ambiguous grain is the root cause of many aggregation errors.
Data Types
Every column has a data type - a description of what kind of values it contains and what operations make sense on it.
Numeric (continuous): Values that can take any real number. Arithmetic makes sense. Examples: age in years, temperature, revenue, height.
Numeric (integer): Whole numbers only. Examples: number of purchases, page count, number of employees.
Categorical (nominal): Values that represent categories with no natural order. Arithmetic does not make sense. Examples: city, product category, country code.
Categorical (ordinal): Values that represent categories with a natural order but no meaningful arithmetic. Examples: satisfaction rating (1=Very Unhappy to 5=Very Happy), education level (High School < Bachelor's < Master's < PhD).
Boolean: True/False or Yes/No values. Examples: is_active, has_churned, is_verified.
Datetime: Points in time. You can calculate durations and sort chronologically. Examples: created_at, last_login_date, order_timestamp.
Text (free-form): Unstructured written content. Requires special processing for most analysis. Examples: product review, support ticket description, email body.
Why types matter: applying the wrong operation to the wrong type produces silently wrong results. Averaging a categorical column (like averaging city codes) produces a number that means nothing. Sorting by datetime when it was stored as a string sorts alphabetically, not chronologically.
Missing Values
Real-world datasets almost always have missing values - cells with no recorded value. Missing values appear in Python/Pandas as NaN (Not a Number), None, or empty strings.
Missing values are not just a technical inconvenience. They carry information. Why is the value missing? Three important possibilities:
The data was never collected: The information simply was not gathered for these rows. Example: optional survey fields that some respondents skipped.
The event did not occur: The absence is meaningful. A missing churn_date means the customer has not churned. A missing refund_amount means no refund was issued.
Data quality problems: The value should exist but was lost, corrupted, or entered incorrectly.
The decision about how to handle missing values depends on why they are missing. Treating a meaningful absence (customer has not churned) as a data quality problem (random missing value) will corrupt your analysis.
Schema
A schema is a formal description of a dataset's structure: what columns exist, what type each column is, and what constraints apply (minimum/maximum values, allowed categories, whether null values are permitted).
Understanding a dataset's schema is the first step in working with it. Most databases and data systems publish their schema. Reading it tells you what a dataset can and cannot answer before you write a single line of code.
Wide vs. Long Format
The same data can be organized in different shapes, and the shape matters for analysis and visualization.
Wide format: Each measured variable has its own column. Easy to read as a table.
customer_id | jan_spend | feb_spend | mar_spend
1 | 45.00 | 62.00 | 38.00
Long format (tidy format): Each row is one observation at one time point.
customer_id | month | spend
1 | jan | 45.00
1 | feb | 62.00
1 | mar | 38.00
Long format is required for most analysis and visualization tools. Wide format is easier for humans to read at a glance. Knowing the difference prevents hours of confusion when a dataset does not behave as expected.
What to Check When You First See a Dataset
When encountering a new dataset, the five-minute assessment:
- What is the grain? - What does each row represent?
- How many rows and columns? - What is the scale?
- What are the column types? - Are datetime columns recognized as dates? Are numerics stored as text?
- Which columns have missing values? - And roughly what fraction?
- What is the date range? - For time-sensitive data, when is the earliest and latest record?
These five questions catch the majority of data quality issues before they become analysis errors.
Where to Go Next
The next module puts this vocabulary to work: you will load a real dataset in Python, answer these five questions, and produce your first data exploration.
What to Practice Next
- Download any small CSV dataset from Kaggle or the UCI ML Repository, open it in a spreadsheet, and for each column decide: is this a feature or a label? Is it numerical, categorical, or text? Write your answers in a comment beside each column header.
- Find a messy real-world dataset (e.g., one with missing values, mixed date formats, or inconsistent category spellings) and list the three most important cleaning steps you would take before using it in a model.
- Sketch a data table for a problem you care about - define at least five columns, decide what each row represents, and explain in one sentence how you would get the label (target) column.
Module 13 of 25 · Curious to AI-Fluent
Stay in the loop
Get new ML/AI lessons in your inbox.
No account needed. We will send curriculum updates, launch notes, and practical learning resources.
Related Posts
More postsAI Agents: What They Are, What They Can Do, and How They Go Wrong
An agent is an AI that takes actions, not just answers questions. That changes what safe use looks like. Learn in plain English what agents are, how they connect to your tools, why they can be tricked by what they read, and the one question to ask before letting one act for you.
Capstone: Build, Document, and Present an AI-Powered Project
The capstone brings everything together. You will build a real AI-powered project, evaluate it systematically, document it clearly, and present it to a non-technical audience.
Career Paths Into AI (Technical and Non-Technical)
Map the AI-related roles, what each one expects, and which next step fits your current background.