Your data science toolkit

You can learn data science with one language and five libraries. The trap is collecting tools instead of using them, so this lesson covers what each tool is for and how to set up a project you can reopen in six months.

The core stack

Need Tools
Language Python, SQL
Notebooks Jupyter, VS Code, Google Colab
Data wrangling Pandas, NumPy, Polars
Visualisation Matplotlib, Seaborn, Plotly, Power BI
ML scikit-learn, XGBoost, PyTorch

SQL is not optional. Most company data lives in a database, and filtering or aggregating there is far faster than dragging everything into pandas. Python does the rest: cleaning, statistics, charts, models.

Set up an environment

python -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install jupyter pandas numpy matplotlib seaborn scikit-learn
jupyter notebook

A virtual environment per project keeps a pandas upgrade for one client from breaking another client's code. Freeze what you installed so a colleague can reproduce it:

pip freeze > requirements.txt
pip install -r requirements.txt   # on the other machine

Pick a working surface

Tool Good for Watch out for
Jupyter Notebook Exploring, charts next to code Out-of-order cells give misleading results
VS Code Scripts, modules, git, debugging Slightly more setup
Google Colab Free GPU, nothing to install Session resets; data must be re-uploaded

A practical habit: explore in a notebook, then move anything you run twice into a .py file and import it.

A project layout that scales

sales-analysis/
├── data/
│   ├── raw/          # never edited, exactly as downloaded
│   └── processed/    # outputs of your cleaning script
├── notebooks/        # 01_explore.ipynb, 02_model.ipynb
├── src/              # reusable functions: load.py, clean.py
├── reports/          # charts and the final one-pager
├── requirements.txt
└── README.md         # what this is, how to run it

Numbering notebooks tells the next person the order. Keeping data/raw/ untouched means you can always rebuild everything from scratch.

Git, even for solo work

git init
printf ".venv/\ndata/\n*.ipynb_checkpoints\n" > .gitignore
git add . && git commit -m "Initial analysis of FY25 sales"

Ignore data/ and the virtual environment: repositories are for code, not for a 400 MB extract, and customer data must never reach a public repo.

Beyond Python

Power BI, Looker Studio and Tableau are common in Indian businesses for dashboards that non-analysts open daily. Excel remains the format your stakeholders will ask for, so df.to_excel is a real skill, not a step backwards.

Common mistakes

  • Installing every library globally until versions conflict.
  • Running notebook cells out of order, then trusting the output.
  • Editing the raw file in Excel, so the analysis can never be reproduced.
  • Committing API keys, passwords or customer extracts to git.

Practice

Create the folder structure above for a project of your own. Set up a virtual environment, install pandas and matplotlib, write requirements.txt, add a .gitignore and make your first commit. Put one raw CSV in data/raw/ and load it from a notebook using a relative path.

B

Written by Bablu Kumar Jha

Founder, BeeProton AI · Mumbai, Maharashtra, India