Programming and IT

How to become a data analyst from scratch

A data analyst answers business questions with numbers — why sales dropped, which version of a page works better, where customers drop off. The tools of the job are simple and well documented in the open: spreadsheets, SQL, Python and a bit of statistics. Below is the order to learn them in and how to build a portfolio from your own studies.

Updated
In this article

What an analyst's work is made of#

The cycle is almost always the same: clarify the question, find the data, clean it, compute the metrics, check the conclusions and present the result so that the person who asked can make a decision. You need technical skills at every step, but what matters most is framing the question well and not drawing a wrong conclusion from correct numbers.

Step 1: spreadsheets (2–3 weeks)#

Excel or Google Sheets is the first tool, and it is still used every day. Learn sorting and filters, the formulas SUMIF, COUNTIF, VLOOKUP or XLOOKUP, pivot tables and simple charts. Exercise: export six months of your own spending and answer three questions — what takes the most money, how spending changes month to month, and which expenses were one-offs.

Step 2: SQL (4–6 weeks)#

Company data lives in databases, and SQL is an analyst's main language. The order: SELECT and WHERE, sorting, the aggregates COUNT, SUM, AVG, GROUP BY and HAVING, JOINs, subqueries, then window functions. A typical analyst query:

SELECT date_trunc('month', created_at) AS month,
       count(DISTINCT user_id)         AS buyers,
       sum(amount)                     AS revenue
FROM orders
GROUP BY month
ORDER BY month;

A detailed plan for the language is in how to learn SQL from scratch.

Step 3: statistics without fear (4 weeks)#

The minimum: the mean, the median and why they drift far apart when there are outliers; spread and standard deviation; distributions; correlation and why it does not prove causation; samples and confidence intervals; hypothesis testing and A/B tests. Check every term on real data: compute the mean and median salary in an open job postings dataset and explain the difference.

Step 4: Python for analysis (6–8 weeks)#

After the basics of the language, move on to the libraries: pandas for tables, matplotlib or seaborn for charts, Jupyter notebooks as your workspace. The key pandas operations are loading a CSV, filtering, grouping, merging tables, handling missing values and dates:

import pandas as pd

df = pd.read_csv("orders.csv", parse_dates=["created_at"])
monthly = df.groupby(df["created_at"].dt.to_period("M"))["amount"].sum()
print(monthly.tail())

If Python is new to you, start with how to learn Python from scratch.

Portfolio: three studies#

Employers look not at certificates but at how you reason. Do two or three studies on open data — city statistics, housing prices, taxi trip data, datasets from competition platforms like Kaggle. Each one needs a question, a description of the data, cleaning, calculations, charts, conclusions and limitations. Keep the notebooks in a Git repository with a half-page summary in the README.

How to check your conclusions#

  • Recompute the key number a second way — in a spreadsheet and in SQL; the numbers must match.
  • Check how many rows you had before and after cleaning, and explain the difference.
  • Ask yourself which other explanation would produce the same picture.
  • Give the study to a friend: do they understand the conclusion without your explanations?

Step-by-step plan

  1. Weeks 1–3 — spreadsheetsFormulas, filters, pivot tables and charts on your own data.
  2. Weeks 4–9 — SQLFrom SELECT to JOIN and window functions; queries against a practice database.
  3. Weeks 10–13 — statisticsMean and median, spread, correlation, hypothesis testing, A/B tests.
  4. Weeks 14–21 — Python and pandasLoading, cleaning and grouping data, charts in Jupyter.
  5. Weeks 22–26 — portfolioTwo or three studies of open data with conclusions and limitations in a repository.

Start learning this in your own space

The plan goes into your repository: tick off stages, keep notes — the change history shows how far you have come.

Start the plan

Check yourself

1.Find the arithmetic mean of 2, 4, 6, 8.

2.Find the median of the set 3, 1, 9, 7, 5.

3.Salaries in a team are 50, 55, 60, 60 and 500 thousand. Which measure better describes a typical salary?

Sources

Was this helpful?

More articles

Programming and IT How to learn Python from scratch Python is a good first programming language: code reads almost like text, and the standard library covers most everyday tasks. This plan takes you from installing the interpreter to your own scripts covered by tests in about four months, at roughly an hour a day. Programming and IT How to learn SQL from scratch SQL is the query language of relational databases. Developers, analysts, testers and managers who want to pull numbers themselves all need it. Basic queries take a few weeks to learn; working confidently with complex reports takes two or three months of practice. Below is the order of topics and ways to train on a real database. Programming and IT How to learn Linux from scratch Linux runs most servers, containers and countless devices, so developers, testers, analysts and system administrators all need the command line. The easiest way to learn it is not by reading lists of commands but by working in the terminal every day and solving small practical tasks. Below is a sequence of topics for two to three months. Programming and IT How to learn JavaScript from scratch JavaScript runs in every browser and, through Node.js, on the server too. It is easy to start — you can run code right in the browser console — but it has plenty of surprising corners, from type coercion to asynchronous code. The plan below takes three to four months and assumes you already know basic HTML and CSS or are learning them alongside. Programming and IT How to learn Java from scratch Java is a strictly typed language behind banking systems, the servers of large services and Android apps. The strictness slows you down at first, but the compiler catches many mistakes before the program ever runs. This plan takes about six months at an hour a day and leads from your first program to a small backend application. Programming and IT How to become a software tester from scratch Software testing is a common way into IT without deep programming at the start. But a tester's job is not "clicking buttons": you need to understand how the application works, design checks using test design techniques and describe defects clearly. Below is the order to study things in and practice assignments you can show an employer.

More solutions