Data Analyst Technical Skills
What each technical area involves, with a small example and a practice task for SQL, spreadsheets, Python, BI tools and statistics, plus a self-test and common mistakes.
9 programs
Choose the best training program according to your career.
Improve the performance of your business with our innovative Industrial Training Program.
Read More →
Our instructor-led training classes are designed to make you an expert.
Read More →
Real-life case studies are a great way to demonstrate your practical knowledge.
Read More →
Explore blogs, latest technologies and industry updates with practical examples.
Read More →Browse all available training programs and choose the right one for your career.
Read More →Know more about who we are and what we stand for.
Discover our mission to equip individuals with essential IT skills and industry expertise.
Read More →Learn, practice and plan your career — bilkul free.
Book a free video counselling session and pick the right course for you.
Read More →Download the data analyst technical skills PDF from Uncodemy: SQL, Excel, Python, BI tools and statistics, each with levels and practice tasks.
This page offers Uncodemy's data analyst technical skills guide as a PDF download. It goes into more depth than a checklist: for each technical area it explains what the skill actually involves, shows a small example and gives a practice task so that you can test yourself.
The download below is its own file. It covers SQL, spreadsheets, Python, BI tools and statistics in depth, with examples, practice tasks and a self-test.
What each technical area involves, with a small example and a practice task for SQL, spreadsheets, Python, BI tools and statistics, plus a self-test and common mistakes.
Technical skills are the means by which an analyst turns a question into evidence. They are never the goal. A strong analyst uses just enough technique to answer the question correctly and clearly, and keeps the method simple so that others can follow it. Still, weak technical skills limit what questions you can answer and how fast you can work. This guide explains the main areas in depth and gives you tasks to practise. Work through them with real datasets rather than only reading.
SQL lets you retrieve and combine data from relational databases. At a minimum an analyst should be able to filter rows, aggregate with GROUP BY, join several tables correctly and use subqueries and common table expressions to build a calculation step by step. Beyond that, window functions allow rankings, running totals and comparisons with the previous row without collapsing the data. The key difficulty is not the syntax but thinking about the grain of each table and how a join changes the number of rows.
Rank products by revenue within each category using a window function inside a CTE. Table names are examples.
WITH product_revenue AS (
SELECT p.category, p.product_name,
SUM(oi.quantity * oi.unit_price) AS revenue
FROM order_items oi
JOIN products p ON p.product_id = oi.product_id
GROUP BY p.category, p.product_name
)
SELECT category, product_name, revenue
FROM (
SELECT *,
RANK() OVER (PARTITION BY category ORDER BY revenue DESC) AS rnk
FROM product_revenue
) ranked
WHERE rnk = 1;
Excel and Google Sheets remain the fastest way to inspect and shape small data. Skills that matter include lookup functions such as XLOOKUP or INDEX with MATCH, conditional functions such as SUMIFS and COUNTIFS, pivot tables, dynamic ranges and Power Query for repeatable cleaning. A good spreadsheet is auditable: inputs are separate from calculations, formulas are consistent down a column and important assumptions are written in cells rather than buried inside formulas.
Python with pandas covers cleaning, reshaping, joining and summarising data, and it scales to files too large for a spreadsheet. Learn to read files, select and filter, group and aggregate, merge tables, handle dates and missing values, and plot with Matplotlib or Seaborn. Equally important is working in a reproducible way: use a notebook or script that someone else can run from top to bottom and get the same result.
Group orders by month and calculate revenue and order count. Column names are examples.
import pandas as pd
orders = pd.read_csv("orders.csv", parse_dates=["order_date"])
monthly = (
orders[orders["status"] != "cancelled"]
.assign(month=lambda d: d["order_date"].dt.to_period("M"))
.groupby("month")
.agg(orders=("order_id", "count"), revenue=("order_total", "sum"))
.reset_index()
)
print(monthly)
Power BI and Tableau turn data into interactive dashboards. The visible part is the charts, but the real skill lies underneath: shaping a clean data model, usually a central fact table of events connected to dimension tables such as customers, products and dates, and then defining measures that calculate correctly under any filter. A dashboard built on a poor model gives wrong totals as soon as a user applies a slicer.
You need enough statistics to avoid being fooled by data: summarising with the right measure, recognising skew and outliers, understanding sampling and uncertainty, interpreting correlation carefully and running basic tests such as a t-test or a chi-square test. Pair every technique with a question about whether the result is practically meaningful and not only statistically significant.
| Area | Task |
|---|---|
| SQL | Find customers who ordered in January but not in February |
| SQL | Calculate a running total of monthly revenue |
| Excel | Build a pivot table with a calculated field and a slicer |
| Python | Merge two tables and check for unmatched keys |
| BI | Create a measure for year-on-year growth that responds to filters |
| Statistics | Explain why the median can be better than the mean for order values |
Analysts increasingly use Git to track changes to queries and notebooks. At a basic level you should be able to create a repository, commit changes with clear messages, push to a remote and read a history. Even without Git, keep a simple habit of dated file names and a change log. Good documentation, such as comments in SQL, markdown notes in notebooks and a data dictionary, makes your work reusable by others and by your future self.
| Situation | What to do |
|---|---|
| Query returns no rows | Remove filters one at a time to find which one removes everything |
| Totals look too large | Check the grain and count rows after each join |
| Python raises a KeyError | Print the column names; check spelling and spaces |
| Dashboard number differs from Excel | Compare filters, date ranges and definitions first |
Ready to practise these skills with a trainer? Explore Uncodemy's Data Analytics course and learn from industry trainers.