Na czym to polega w sklepie
Metoda df.assign zwraca nowy DataFrame z dodatkowymi kolumnami obliczonymi z istniejących. Preferowana nad bezpośrednim df["x"] = ... w łańcuchach transformacji - czytelniejsza i bez efektów ubocznych na kopii roboczej.
Przykład ze sklepu internetowego
Tabela orders ma revenue i cogs (koszt towaru). Chcesz dodać marżę i procent marży przed eksportem do Power BI:
import pandas as pd
orders = pd.read_csv("orders_line_items.csv")
enriched = (
orders.assign(
margin=lambda d: d["revenue"] - d["cogs"],
margin_pct=lambda d: (d["margin"] / d["revenue"]).round(4),
is_high_margin=lambda d: d["margin_pct"] >= 0.35,
)
)
# enriched zawiera oryginalne kolumny + margin, margin_pct, is_high_margin
Co zrobić po stronie biznesu
- Dodanie ROAS:
revenue / spendw raporcie kampanii. - Flaga is_paid z UTM medium (
cpc,paid). - Kolumna days_to_convert z różnicy dat kliknięcia i zakupu.
W skrócie
assign + lambda d: pozwala odwoływać się do kolumn utworzonych w tym samym wywołaniu. To idiom pandas dla czystych pipeline analitycznych.