Choose a Python library for the task
Start with the data, the operation and the output you need. Learn a small set of tools well before adding another dependency.
Compare the core tools ↓A practical starting set
pandas: labelled tables
Inspect, filter, group and merge records. Check the row grain, missing values and join cardinality at each step.
Run the checked order-summary example →NumPy: numerical arrays
Work with shapes, dtypes and numerical operations. Predict broadcasting results and use appropriate tolerances when comparing floating-point values.
Practise array shapes →Matplotlib: controlled figures
Build labelled charts for reports and exported images. Choose the scale, units and layout deliberately.
Build a labelled chart →Seaborn: statistical plots
Compare distributions and relationships. Inspect aggregation defaults and sample sizes before interpreting a visual pattern.
Compare distributions →Standard library: focused tasks
Use csv, collections, datetime and pathlib for small parsing, counting and file tasks without a table library.
Try standard-library examples →Plan an analysis before choosing more tools
- Define the question, population and output grain.
- Inspect the schema, size, keys and missing values.
- Validate the data using rules you can explain. Negative amounts may represent refunds; do not drop them simply because they look unusual.
- Transform and reconcile totals. Keep records excluded by a rule visible in a separate check.
- Choose a chart or table that answers the question and state what remains uncertain.
When the data does not fit comfortably in memory
Measure the actual memory footprint, including intermediate results. Filter or aggregate in the database when appropriate, read only needed columns, or process chunks when the operation supports it. There is no universal “one million rows” limit: column types, width, joins and available memory all matter.
A different execution engine may help, but benchmark the workload and confirm equivalent results before changing libraries. A faster result with different null, ordering or type behaviour is not a validated replacement.
Questions to ask before adding a dependency
- Does it solve a need that existing tools cannot meet clearly?
- Can the team maintain it and reproduce the environment?
- How does it handle missing data, types and memory?
- Does the output need to be static, interactive or scheduled?
- What checks will demonstrate that the result is correct?
Practise an end-to-end analysis
The Python learning guide walks through completed orders, a validated merge and an explanation of the result. The pandas reference helps you choose individual operations.
Reference: pandas grouping, NumPy broadcasting, Matplotlib quick start and Python collections.
Interview preparation
Use examples from your own work and explain why you chose a tool. These guides are educational resources, not verified employer question banks. Booking and payment are currently inactive; all planned preparation sessions and feedback are in English.
View preparation options