Data Analyst Learning Path: What to Learn First
A data analyst turns raw data into decisions. The articles on this site cover the tools you need to do that work in Python and SQL. This guide shows where each tool fits, what to read first, and how the pieces connect.
The DA Workflow
Every analysis follows the same seven stages, no matter the tool or the topic:
1. Extract → pull data from a database or file
2. Clean → fix types, handle nulls, remove duplicates
3. Analyse → aggregate, filter, compute metrics
4. Visualise → communicate findings with charts
5. Present → build interactive dashboards for stakeholders
6. Reason → use statistics to check whether a pattern is real
7. Model → go beyond description to prediction
The articles on this site map onto these stages.
Stage 1 — Extract: SQL
SQL is the language you use to pull data from a database. Most business data lives in databases (Postgres, MySQL, SQL Server), and SQL is how you talk to them.
Start here: SQL Cheat Sheet for Data Analysts The core syntax — SELECT, WHERE, GROUP BY, JOINs, CTEs (a temporary named result you can use inside your query), and window functions. Everything else builds on this.
Next: SQL Patterns for Analysts & Interviews Common problems you will see again and again: removing duplicate rows, comparing this month to last month, cohort analysis (grouping users by sign-up month and tracking them over time), top-N per group, and funnel analysis. Each pattern shows how to combine the basic SQL parts into a full answer.
When you are comfortable: Advanced SQL: Windows, CTEs & Tuning Window frame clauses, recursive CTEs (a CTE that calls itself, useful for date series and trees), GROUPING SETS, views, temporary tables, and EXPLAIN for checking query speed. These solve problems that basic SQL cannot.
When you also need to change data: SQL INSERT, UPDATE & DDL for Analysts The write side of SQL — INSERT, UPDATE, DELETE, upserts, transactions, and creating or altering tables. A small part of DA work but the part where mistakes are expensive; the article is built around two safety habits (preview with SELECT, wrap in a transaction).
Stage 2 — Clean: Excel + NumPy + Pandas
Data is rarely clean when you get it. You almost always need to fix the column types, fill in blanks, and drop duplicates first. Python handles this layer. Excel handles the lighter version that most offices use.
Excel for Analysts: Formulas & Pivot Tables The tool most Taiwan offices use every day. The article covers the core functions (XLOOKUP, SUMIFS, IFS), pivot tables, date and text work, and the DA workflows you will see at work. If you are new to data work, read this before NumPy and Pandas. The ideas — lookup, filter, aggregate, pivot — are the same. Excel does them with menus, while SQL and Pandas do them with code.
Start here: NumPy Cheat Sheet for Data Analysts NumPy is the math base of the Python data world. Pandas is built on top of it. Once you understand arrays, vectorization (running one operation on many numbers at once), and broadcasting, Pandas is much easier to learn and debug.
Then: Pandas Cheat Sheet for Data Analysts The main tool for cleaning and shaping data in Python. Covers reading files, filtering rows, handling nulls (missing values), joining tables, working with strings and dates, and ten common DA workflows — from cleaning pipelines to comparing this period vs the last one.
The Pandas workflows match the SQL patterns one-to-one. If you know the SQL version, the Pandas one will feel familiar.
Text cleaning: Regex for Analysts: Python, Pandas & SQL
Regular expressions describe text patterns — validate formats, extract pieces, and clean messy strings. One syntax works in Python's re, Pandas .str methods, and SQL REGEXP, so it pays off across the whole stack.
Stage 3 — Analyse
Analysis is the heart of the job. SQL and Pandas overlap the most here.
SQL is the right choice when: - The data lives in a database and you want results without loading it into Python. - The query touches several large tables — the database engine joins them faster than Python can. - You are writing a report that other people will re-run later.
Pandas is the right choice when: - You are working in a notebook and need to try things quickly. - The work involves reshaping (turning rows into columns or back), rolling windows (moving averages), or several steps in a row. - The output goes into a chart or a model.
In real work, most analysts use both. SQL pulls and groups the data. Pandas reshapes it and adds the derived numbers.
Applied analysis — RFM: RFM Segmentation with SQL & Python The most practical way to group customers by behavior. RFM uses three numbers from each customer's transactions — Recency (how recently they bought), Frequency (how often they buy), and Monetary (how much they spend). The article covers two cases: when you only have the license plate (no membership system) and when you have a member ID (app users). Both cases include full SQL and Python code.
Time-based analysis: Time Series for Analysts: Trend to Forecast Almost every business metric is a time series. This covers the daily toolkit — resampling, rolling averages, trend/seasonality decomposition, fair period comparisons, simple forecasting with a baseline, and anomaly detection with rolling bands.
The judgment layer: How to Design Metrics and Diagnose Drops The other articles compute numbers; this one chooses them and reads them. How to define a metric precisely (numerator, denominator, window, filters), build a metric tree, and work the classic "revenue dropped 20%" diagnosis — data check, time shape, segment contribution, factor decomposition. The most common DA interview scenario, and the skill that separates reporting from analysis.
Stage 4 — Visualise: Matplotlib + Seaborn
Charts turn numbers into something people can understand. The two articles here cover two different skills.
Syntax and code: Matplotlib & Seaborn Cheat Sheet for Analysts Line charts, bar charts, histograms, box plots, scatter plots, heatmaps, subplots, and styling. Seaborn handles most charts with less code. Matplotlib gives you fine-grained control. In real work, you use both together.
Choosing the right chart: How to Choose the Right Chart for Your Data Drawing a chart and choosing the right chart are two different skills. This guide covers when each chart type works, when it does not, and the mistakes you make when you pick the wrong one. Read this before you show your results to your team or your boss.
Stage 5 — Present: PowerBI
Python charts are for your own analysis. PowerBI is for sharing results with your team — interactive dashboards they can filter and explore on their own, no code needed.
Power BI for Analysts: Modeling, DAX & Visuals covers three layers: - Data modeling — star schema, relationships, calculated columns vs measures. If you get this wrong, everything else gets harder. - DAX syntax — the formula language for measures: CALCULATE, time intelligence, DIVIDE, VAR/RETURN, iterator functions. Most PowerBI users struggle with DAX. Use this article as the reference you come back to. - Visualization selection — which visual fits which question, and the mistakes you make when you pick the wrong one.
Stage 6 — Statistics: The Reasoning Layer
Statistics tells you whether a pattern in the data is real or just noise.
Statistics for Analysts: Testing & A/B Tests covers: - Descriptive statistics — mean vs median, standard deviation, percentiles, skewness - Distributions — normal distribution, central limit theorem, outlier detection - Hypothesis testing — checking if a difference between two groups is real. Covers t-test, chi-square, Mann-Whitney, p-values (the chance the result happened by luck), and Type I/II errors (false alarm vs missed signal) - Correlation — Pearson, Spearman, and the difference between correlation and causation - A/B testing — showing two versions to two groups and comparing the result. Covers sample size calculation, running the test, and the difference between statistical significance (the math says yes) and practical significance (it actually matters for the business) - Common mistakes — p-hacking, Simpson's paradox, survivorship bias
Read this before the ML articles. Without basic statistics, you cannot tell whether a model result is meaningful.
The Tooling Layer — Git & Environments
Two skills sit underneath every stage rather than inside one of them. Read them alongside whatever you are learning — ideally before your first multi-day project.
Git Basics for Data Analysts
Version control for analysis work: the daily commit loop, what to put in .gitignore (data files and secrets stay out), branches for risky experiments, and how to recover yesterday's version of a query. The difference between analysis_final_v3_FINAL.sql and a real history.
Python venv & Project Setup for Analysts One virtual environment per project: venv, pip, requirements.txt, Jupyter kernels, and the .env pattern for database credentials. This is what makes a project reproducible — by a colleague, or by you in six months.
Stage 7 — Model: Machine Learning
Modeling moves you from describing what happened to predicting what happens next.
Syntax and workflow: scikit-learn Workflow for Data Analysts The full scikit-learn workflow from start to finish: feature selection, train/test split, encoding, scaling, training, evaluation, cross-validation (testing the model on different slices of the data), feature importance, and Pipeline. Covers both regression (predict a number) and classification (predict a category).
Choosing the right model: How to Choose the Right Machine Learning Model When to use linear regression vs decision trees vs random forest vs XGBoost. How to read the evaluation metrics, spot overfitting (when the model memorizes the training data and fails on new data), and compare models in a structured way. Read this alongside the notebook. The notebook shows you how. The guide shows you when and why.
Unsupervised learning: K-means Clustering for Customer Segmentation When there is no target column to predict — grouping customers or stations by similarity with K-means. Covers the parts that actually decide the outcome: scaling, choosing k with elbow and silhouette, and profiling the clusters into segments the business can name. The data-driven sequel to RFM segmentation.
Recommended Reading Order
If you are new to data analysis
- Excel for Analysts: Formulas & Pivot Tables — start here if you have no DA experience
- SQL Cheat Sheet for Data Analysts — learn to query data from databases
- NumPy Cheat Sheet for Data Analysts — the Python math foundation
- Pandas Cheat Sheet for Data Analysts — clean and shape data
- Regex for Analysts: Python, Pandas & SQL — pattern-based text cleaning in Python, Pandas, and SQL
- Matplotlib & Seaborn Cheat Sheet for Analysts — turn results into charts
- How to Choose the Right Chart for Your Data — pick the right chart
- Power BI for Analysts: Modeling, DAX & Visuals — build dashboards for your team
- SQL Patterns for Analysts & Interviews — apply SQL to real problems
- RFM Segmentation with SQL & Python — your first end-to-end project
- Statistics for Analysts: Testing & A/B Tests — learn whether your findings are real
- scikit-learn Workflow for Data Analysts — intro to prediction
- How to Choose the Right Machine Learning Model — pick the right model
- Advanced SQL: Windows, CTEs & Tuning — unlock advanced SQL
- SQL INSERT, UPDATE & DDL for Analysts — the write side: INSERT, UPDATE, transactions, CREATE TABLE
- Time Series for Analysts: Trend to Forecast — trend, seasonality, forecasting, anomalies
- K-means Clustering for Customer Segmentation — data-driven segmentation with K-means
- How to Design Metrics and Diagnose Drops — choose the right numbers and diagnose why they moved
Read alongside any stage (before your first multi-day project):
- Git Basics for Data Analysts — version control for your scripts and queries
- Python venv & Project Setup for Analysts — venv, pip, requirements.txt, .env secrets
If you already know SQL
Start at step 2. The Pandas Cheat Sheet for Data Analysts shows the SQL version next to each Pandas workflow, so the switch is easy.
If you already know Python
Start at step 1. The SQL cheat sheet and SQL patterns articles cover what most Python analysts need when they start pulling data from databases.
If you want to move into machine learning
Get Pandas and Statistics solid first. Feature engineering (preparing the input data for the model) is 80% of ML work, and you need statistics to tell whether a model result is real. Then work through the ML articles in order: scikit-learn workflow first, then model selection.
How the Articles Connect
Git · Python env (tooling — under every stage)
Excel ──────────────────────────────────────────────────────┐
│
SQL cheat sheet ──────────── SQL patterns │
│ │ │
├──── Advanced SQL │ (same patterns, │
└──── SQL writes & DDL │ Python side) │
NumPy ──── Pandas ─────────────────────┘ ◄─────────────────┘
│
├──── Regex (text patterns: Python / Pandas / SQL)
│
├──── RFM ──── K-means clustering
│
├──── Time series ──── Metrics & diagnosis
│
├──── Matplotlib & Seaborn ──── Chart selection
│
├──── Power BI
│
├──── Statistics
│ │
└──── scikit-learn ──────────── ML model selection
│
└─── K-means clustering (unsupervised side)
Each cheat-sheet / reference article is the how (syntax and workflow). Each guide or patterns article teaches when and why — the judgment that sits on top of the syntax.