iwantcoding.com
🔥 Daily 👥 Rooms 🏆 Top Log in Sign up

Pandas Tutorial

pandas adds the DataFrame — a labelled, in-memory table with SQL-like joins, filters, and aggregations. The standard tool for data wrangling in Python.

Install

SHELL
pip install pandas

Create a DataFrame

PYTHON
import pandas as pd

df = pd.DataFrame({
    'name':  ['Ada', 'Grace', 'Linus'],
    'age':   [36, 56, 42],
    'country': ['UK', 'US', 'FI'],
})
print(df)

Read & write

PYTHON
df = pd.read_csv('customers.csv')
df = pd.read_json('users.json')
df = pd.read_sql('SELECT * FROM orders', con=connection)

df.to_csv('out.csv', index=False)
df.to_json('out.json', orient='records')
df.to_parquet('out.parquet')

Common operations

OperationCode
First 5 rowsdf.head()
Shapedf.shape(rows, cols)
Summary statsdf.describe()
Filterdf[df.age > 40]
Select columnsdf[['name', 'age']]
New columndf['decade'] = df.age // 10
Group bydf.groupby('country').age.mean()
Sortdf.sort_values('age', ascending=False)
Joinorders.merge(customers, on='customer_id')

Series — a column on its own

PYTHON
ages = df['age']
print(ages.mean())
print(ages.value_counts())
Tip: For datasets that don't fit in RAM look at polars (Rust-based, much faster on the same shape of API) or dask (distributed pandas).

Example

Example
# import pandas as pd
# df = pd.DataFrame({'name': ['Ada', 'Linus'], 'age': [36, 56]})
# print(df)
print('pandas adds DataFrames — tabular data with SQL-like ops.')
Try it Yourself »

Exercise

Common alias for the pandas import.

import pandas as

Test yourself

Q1. The 2D table type is…
Q2. A single column is a…
Q3. Group + aggregate is…

Discussion

Loading…