pythonintermediate

Pandas Method Chaining with .pipe()

Use the .pipe() method to create clean, readable pandas transformation chains.

python
import pandas as pd

def add_revenue(df):
    df['revenue'] = df['price'] * df['qty']
    return df

def drop_nulls(df, cols):
    return df.dropna(subset=cols)

def normalise_names(df):
    df.columns = df.columns.str.lower().str.replace(' ', '_')
    return df

result = (
    pd.read_csv('sales.csv')
    .pipe(normalise_names)
    .pipe(drop_nulls, cols=['price', 'qty'])
    .pipe(add_revenue)
    .query('revenue > 100')
    .sort_values('revenue', ascending=False)
    .reset_index(drop=True)
)
print(result.head())

Use Cases

  • clean ETL code
  • reproducible transformations
  • data preprocessing

Tags

Related Snippets

Similar patterns you can reuse in the same workflow.