Home › Guides › Python for data analysis
Tech Explained · 2026Python for Data Analysis in 2026: A 10-Week Beginner Roadmap With Weekly Milestones
Python for data analysis means using pandas, NumPy and a notebook to load, clean, group and chart data that is too big or too repetitive for Excel. A focused beginner can reach job-ready basics in about 10 weeks by learning pandas, SQL and one charting library, then shipping a single end-to-end project.
- Ten weeks is realistic at 8 hours a week, but only if you skip web frameworks, object oriented theory and machine learning for now.
- pandas 3.0 broke a lot of old tutorials. Copy-on-Write is the only mode now and string columns get a real str dtype, so 2023-era snippets will mislead you.
- SQL matters more than Python for your first analyst job. If you have six weeks rather than ten, spend them on SQL.
- One deep project beats five shallow ones. Interviewers ask how you handled dirty data, not how many notebooks you pushed.
- Install once with uv, not with three competing tools. Environment chaos is the most common reason people quit in week two.
- Charting is a week, not a month. matplotlib plus a title that states the finding beats a dashboard nobody opens.
You have been given a 48,000 row CSV of claims data, the file opens in Excel but freezes on every pivot, and the answer your manager wants is a single number by city. That is the moment most people in Indian operations and finance teams first hear that they should "just use Python". The advice is right. The problem is that the internet will then hand you a Django tutorial, a linear algebra course and a 40 hour video that never opens a real file.
This is the shortest honest path from that stuck spreadsheet to a working analysis, at about 8 spare hours a week. The running example is a claims processing executive in Pune, two years in, comfortable in Excel, no programming background.
What Python for Data Analysis Actually Replaces
Python for data analysis is a narrow slice of Python. You are not learning to build software. You are learning to describe a table operation in code so it runs the same way on 48,000 rows as on 48, and so next month's file takes 20 seconds instead of an afternoon.
Four things move out of Excel and into code: loading messy files, cleaning columns, grouping and joining, and producing a chart. Everything else sits on top of those four.
The four skills employers actually screen for
Analyst job descriptions in India cluster tightly around SQL, Excel, one BI tool, and enough statistics to know when a number is meaningless. Python usually appears as a strong fifth: valued, increasingly expected, rarely the thing that rejects you on its own. That ordering is why the plan below gives SQL two full weeks rather than a footnote, and why 360DT's Data Analyst course teaches the four together with Python alongside.
Also read: How to Become a Data Analyst Without Experience in India for the wider career switch view around this skill plan.
The 10-Week Python for Data Analysis Roadmap
Here is the plan in full. Each block ends in something you can show another person, because a milestone you cannot demonstrate is not a milestone.
The 10-week plan at 8 hours a week
Each stage ends in a file, a query or a chart you can send to someone.
Environment and the language floor
Install Python and uv, run JupyterLab, learn variables, lists, dicts, loops and functions. Deliverable: a notebook that reads a CSV and prints its shape and column names.
pandas: load, inspect, select
read_csv options, dtypes, .loc and .iloc, filtering, missing values. Deliverable: a cleaned version of one real file from work, with a note on every column you changed.
Group, join, reshape
groupby with agg, merge with validate, pivot_table, dates. Deliverable: the monthly summary your team builds by hand, reproduced in under 30 lines.
SQL, and DuckDB on your laptop
SELECT, WHERE, GROUP BY, JOIN, window functions. Deliverable: that same summary written twice, in pandas and in SQL, with matching numbers.
Charts that say one thing
matplotlib basics, axis labels, saving to PNG, when a table beats a chart. Deliverable: three charts titled with the finding, not the variable.
One project, end to end
Messy public dataset to cleaned data to a written conclusion. Deliverable: a GitHub repo with a README a hiring manager reads in two minutes.
Plan assumes roughly 8 study hours a week and no prior programming. Checked 18 September 2026.
Where the hours actually go
Beginners over-invest in syntax and under-invest in cleaning. This is what ten weeks looks like when the real work sets the timetable.
Effort split across the 10 weeks
Cleaning and reshaping data is the job. Syntax is the smallest part of it.
Recommended allocation based on the deliverables listed above, not a survey. Checked 18 September 2026.
Weeks 1 and 2: Install Python Once, Properly
Most people lose their first fortnight to environments. Anaconda, then a second Python from the Microsoft Store, then pip puts pandas in the wrong one, and by the time the import error appears they have concluded they are bad at this.
Use uv, the Rust based installer, and use only uv. It installs packages far faster than pip and manages the Python version too, so there is exactly one place where things live. The trade-off I will accept: uv is newer than conda and a few scientific packages still have rough edges. For a laptop that needs pandas, DuckDB and Jupyter, it removes the whole class of problem that makes beginners quit.
# one-time setup, works on Windows PowerShell, macOS and Linux
uv init --bare claims-analysis
cd claims-analysis
uv add pandas duckdb matplotlib
uv add --dev jupyterlab
# start the notebook server
uv run jupyter lab
Python 3.14.7 is the current stable release on python.org as of 5 August 2026, and pandas 3.0 requires Python 3.11 or newer, so anything from 3.11 up is safe. If a tutorial tells you to install Python 3.8 because "it is more compatible", the tutorial is old.
| Tool | What it does for you | Cost as of September 2026 |
|---|---|---|
| Python 3.14.7 | The language. 3.14.7 was released on 5 August 2026 per python.org. | Free |
| uv | Installs Python versions and packages, replaces pip and venv in one command. | Free, open source |
| pandas 3.0.5 | The table library. 3.0.5 shipped on 22 July 2026 per the official release notes. | Free, open source |
| DuckDB 1.4 LTS | Runs SQL directly against CSV and Parquet files, no server to install. | Free, open source |
| JupyterLab | Notebook interface where you write and re-run analysis in small steps. | Free |
| Google Colab | Browser notebooks if your laptop is weak. Sessions run at most 12 hours, hardware not guaranteed, per the Colab FAQ. | Free tier |
| Kaggle Datasets | Public CSVs to practise on when work data is off limits. | Free account |
What usually goes wrong here
You will type pip install pandas out of habit, it will land in some other Python, and the notebook will still say ModuleNotFoundError. Stop debugging and check the interpreter: run import sys; print(sys.executable) in a cell. If that path is not inside your project's .venv folder, no amount of reinstalling pandas will fix it.
Weeks 3 to 5: A Pandas Tutorial for Beginners That Ends in a Real Answer
A pandas tutorial for beginners usually stops at printing a DataFrame. Go further in one sitting: load a file, fix its types, group it, produce the number someone asked for. Here is the whole loop, with output you can reproduce.
The input file, orders.csv:
order_id,city,channel,amount
1001,Pune,Online,1200
1002,Pune,Retail,800
1003,Mumbai,Online,2500
1004,Mumbai,Online,1500
1005,Mumbai,Retail,1000
1006,Pune,Online,400
1007,Chennai,Retail,900
1008,Chennai,Online,1100
import pandas as pd
df = pd.read_csv("orders.csv")
# 1. headers arrive with stray spaces more often than you would like
df.columns = df.columns.str.strip()
# 2. force the money column to be numeric; bad cells become NaN, not crashes
df["amount"] = pd.to_numeric(df["amount"], errors="coerce")
# 3. drop rows that have no usable amount
df = df[df["amount"].notna()]
# 4. the actual question: revenue and average order value by city
summary = (df.groupby("city")["amount"]
.agg(["sum", "mean", "count"])
.sort_values("sum", ascending=False)
.round(2))
print(summary)
Running that prints:
sum mean count
city
Mumbai 5000 1666.67 3
Pune 2400 800.00 3
Chennai 2000 1000.00 2
Nine lines, and you have replaced a pivot table that needed rebuilding every month. Change the file, re-run the cell, the answer updates. That is the entire pitch for Python for data analysis, and seeing it work on your own data solves the motivation problem.
The six stages every analysis passes through
Almost all of your first ten weeks is spent on stages 2 and 3, not on stages 5 and 6.
Stage names match the code example above. Checked 18 September 2026.
pandas 3.0 changed the rules under the tutorials
pandas 3.0.0 landed on 21 January 2026 and the current stable version is 3.0.5, released on 22 July 2026 according to the official pandas release notes. Two changes matter to you on day one. Copy-on-Write is now the only mode, so any indexing operation behaves as a copy, which means chained assignment such as df[df["amount"] > 0]["flag"] = 1 silently fails to change your DataFrame. Use df.loc[df["amount"] > 0, "flag"] = 1 instead, always.
The second change: string columns are now inferred as a dedicated str dtype backed by Apache Arrow rather than the old object dtype. Tutorials that teach you to check df.dtypes == "object" to find text columns will quietly find nothing. When a 2023 blog post and pandas 3 disagree, pandas 3 wins.
Weeks 6 and 7: SQL and DuckDB, the Half of the Job Python Does Not Cover
Our Pune claims executive now has a working notebook. She still cannot pass a first round interview, because the screening exercise is SQL, against a database she has never seen.
DuckDB is the fastest way to practise without installing a server. It runs SQL straight against CSV and Parquet files on your laptop, and the 1.4 LTS line has been maintained through 2026, with 1.4.5 released on 17 June 2026 per the DuckDB announcements. Same file as before, same answer, different language:
import duckdb
duckdb.sql("""
SELECT city,
sum(amount) AS revenue,
round(avg(amount),2) AS avg_order,
count(*) AS orders
FROM 'orders.csv'
GROUP BY city
ORDER BY revenue DESC
""").show()
Write every week 6 and 7 exercise twice, in pandas and in SQL, then compare the outputs row by row. When they disagree you have found a real gap in joins or null handling, which is exactly what interviewers probe. The 20 SQL interview questions with model answers are good exercises once the basics hold, and the SQL optimization guide is for when your queries work but crawl.
If you enjoy this half more than the pandas half, that tells you something. People who like making data move reliably end up in data engineering, where a live Microsoft Fabric program covering DP-700 is the next step rather than a BI tool.
Weeks 8 to 10: Build One Python Data Analysis Project An Interviewer Can Poke At
Portfolio advice says build five projects. Build one, and make it survive questioning. Pick a dataset with genuine mess in it: a government release, a Kaggle CSV with three spellings of every city, or anonymised numbers from your own job. Then structure the repo so a hiring manager understands it in two minutes.
| Repo element | What goes in it | The question it answers in an interview |
|---|---|---|
| README.md | The question you asked, the answer you found, one chart, how to run it. | "Tell me about this project in one minute." |
| 01_clean.ipynb | Every cleaning decision with a comment on why. | "How did you handle the missing values?" |
| 02_analysis.ipynb | groupby, joins, the actual calculation. | "Why did you group it that way?" |
| data/raw and data/clean | Original file untouched, cleaned file separate. | "Can you reproduce this from scratch?" |
| notes.md | Three things you got wrong and later fixed. | "What would you do differently?" |
That last file is the one almost nobody writes and the one that most impresses an experienced interviewer, because it shows you audited your own work. Our Pune analyst wrote in hers that she had averaged an already-averaged column and inflated a city figure threefold. Saying that out loud reads as competence, not weakness.
Python will not, by itself, get you a data analyst job in India, and anyone selling it that way is overselling. Many analysts are hired on SQL, Excel and Power BI alone, and in a hiring process Python is usually the fourth thing checked. If you have six weeks before interviews rather than ten, spend them on SQL and a BI tool, then come back to this roadmap. Python pays off most in the second year, when the repetitive parts of your job start disappearing into scripts.
Learn Python, SQL, Excel and Power BI in one 10-week live batch
The Data Analyst course covers Python, SQL, advanced Excel and Power BI with preparation for the Microsoft PL-300 certification. It runs live over 10 weeks with hands on projects, mentor support and placement guidance, and the next batch starts 27 Sept 2026.
Explore the course
6 Mistakes That Stall People Learning Python for Data Analysis
Where the ten weeks usually go wrong
Each of these costs a fortnight, and each has a one-line fix.
Learning Python instead of pandas
Six weeks of classes and inheritance before opening a single CSV. You need functions, lists and dicts. The rest can wait until you want it.
Week 1 trapPractising only on clean data
Titanic and Iris are spotless, which is why they teach you nothing. Find a file with rupee symbols, merged headers and three spellings of Bengaluru.
Week 3 trapFollowing pre-2026 tutorials blindly
Copy-on-Write and the new str dtype changed behaviour that thousands of posts still describe the old way. Check the version before trusting a snippet.
Week 4 trapSkipping SQL until later
Later never arrives, and round one is usually a SQL exercise. Two weeks of SQL lifts your callback rate more than two more weeks of pandas.
Week 6 trapChasing machine learning early
A scikit-learn model on unvalidated data is a confident wrong answer. Nobody hires a fresher analyst to model. They hire you to get the numbers right.
Week 8 trapNever showing the work to anyone
Notebooks only you have read carry no signal. Put one on GitHub in week 10 and ask a working analyst to break it.
Week 10 trapFailure patterns compiled from the pandas 3.0 migration notes and common beginner support threads, checked 18 September 2026.
Errors you will meet in week 3, and what each one means
| What you see | What it actually means | The fix |
|---|---|---|
| KeyError: 'amount' | The column name has a trailing space or different case. |
df.columns = df.columns.str.strip() right after read_csv. |
| ValueError: could not convert string to float | Numbers arrived as text, usually with commas or a currency symbol. |
pd.to_numeric(col, errors="coerce"), then count the NaNs it produced. |
| UnicodeDecodeError | The file is not UTF-8, common with exports from older Indian ERP systems. |
pd.read_csv(path, encoding="utf-8-sig"), then try latin-1. |
| Your assignment silently does nothing | Chained assignment under Copy-on-Write, the only mode in pandas 3.0. | One .loc[rows, col] = value statement instead of two brackets. |
| Row count grows after a merge | Duplicate keys on one side, so the join fanned out. |
df.merge(other, on="id", validate="one_to_one") to fail loudly. |
| ModuleNotFoundError: pandas | The notebook kernel is a different Python from the one you installed into. |
import sys; print(sys.executable) and point the kernel at your project venv. |
How to Learn Python for Data Analysis Without Losing Six Months
Free material is abundant and mostly good. The official pandas user guide, the Python documentation and Kaggle datasets will take you the whole way if you are disciplined. Google Colab removes the install problem, with the caveat that a free session runs at most 12 hours and the hardware is not guaranteed, which the Colab FAQ states plainly.
What free material will not give you is a deadline and someone to tell you your cleaning logic is wrong. That is the real argument for a live cohort, and honestly it is the only one. If you have finished things alone before, do this alone. If your last three online courses died in week two, buy the deadline. The live Data Analyst course runs Saturday and Sunday, 8:00 to 11:00 PM IST over 10 weeks with the same Python, SQL, Excel and Power BI sequence, and a free webinar or demo class costs nothing if you want to watch a session first.
Where you go next depends on which part you liked. If cleaning and pipelines pulled you in, look at data engineering and DP-700. If the modelling questions did, the MLOps engineer track covers deploying and monitoring models rather than just training them. If you caught yourself asking whether an LLM could do the cleaning, the AI engineer course covers RAG and agents, and the Copilot and agent administration course is the governance side of it. The certifications overview shows how the paths connect.
Also read: What Is Kubernetes if your analysis work starts running on someone else's cluster.
Related guides
- PL-300 Exam Prep 2026: A 6-Week Study Plan the certification most Indian analyst roles ask for once your Python basics are in place.
- Data Analyst Jobs in Pune 2026 what the market pays and who is hiring, if Pune is where you are applying.
- Power BI vs Tableau in 2026 pick the one BI tool to pair with Python before you spend a week on the wrong one.
- Data Analyst to Data Engineer in 2026 the move to make if the SQL and pipeline weeks were your favourite part.
- How to Use AI in Finance Work in 2026 prompt patterns for the reporting tasks you are automating alongside Python.
Frequently asked questions
Can I really learn Python for data analysis in 10 weeks?
Yes, to a working beginner level, at roughly 8 hours a week and with a hard scope limit. Ten weeks gets you loading, cleaning, grouping, joining and charting real files, plus basic SQL. It will not get you machine learning or production pipelines, and any plan promising those too is padding the syllabus.
Do I need Python to get a data analyst job in India?
Not always. Many analyst roles are filled on SQL, Excel and a BI tool, with Python listed as preferred rather than required. It weighs more in product companies, GCCs and startups, and it weighs a lot by your second year, when manual reporting is expected to disappear into scripts.
Should I learn pandas or SQL first?
Learn enough pandas to load and inspect a file, then go to SQL, then come back. SQL is what the first interview round tests and what you use daily against company databases. This roadmap puts two full weeks of SQL in the middle rather than at the end for that reason.
Which Python version should I install in 2026?
Anything from 3.11 upward, since pandas 3.0 requires 3.11 or newer. Python 3.14.7 was the current stable release on python.org as of 5 August 2026. Avoid tutorials pinning you to 3.8, and let uv install the version so you never have two Pythons fighting.
What changed in pandas 3.0 that breaks older tutorials?
Two things. Copy-on-Write became the only mode, so chained assignment no longer modifies your DataFrame and you must use .loc. And string columns are inferred as a dedicated str dtype backed by Apache Arrow instead of object dtype, so code testing for object dtype finds nothing.
Is Google Colab enough or do I need a local setup?
Colab is enough for the first six weeks and removes every installation problem. Free sessions run at most 12 hours and the hardware varies, per the Colab FAQ. Move to a local uv environment by about week 7, because employers hand you files you cannot upload to a Google account.
How many projects should a data analysis portfolio have?
One deep project beats five tutorial reproductions. Use a messy dataset, document every cleaning decision, add a notes file listing what you got wrong and fixed, and write a README a manager can read in two minutes. Add a second only if it asks a genuinely different question.
Do I need maths or statistics before starting?
School-level arithmetic and percentages are enough for week one. Add averages versus medians, distributions and the difference between correlation and cause around week 8, when you start interpreting results rather than producing them. Calculus and linear algebra matter only if you move into machine learning.
About this guide. 360 Digital Transformation is an Authorized Training Partner of Anthropic and Microsoft. Other certification bodies, vendors and employers named here are not affiliated with us. Tools and versions change quickly; commands and figures cited were checked on 18 September 2026.




