Przejdź do treści

Pandas. Metoda df.melt(). Przekształcenie szerokiej tabeli KPI kampanii na format long.

Na czym to polega w sklepie

Metoda df.melt przekształca DataFrame z formatu szerokiego (wiele kolumn metryk) na długi (kolumna variable + value). Niezbędna przed wizualizacją w narzędziach wymagających tidy data i przy łączeniu metryk z różnych źródeł.

Przykład ze sklepu internetowego

Raport kampanii ma kolumny spend, clicks, conversions obok siebie - do wykresu wieloseryjnego potrzebujesz formatu long:

import pandas as pd

campaigns = pd.read_csv("campaign_kpis.csv")
long = campaigns.melt(
    id_vars=["date", "campaign", "channel"],
    value_vars=["spend", "clicks", "conversions", "revenue"],
    var_name="metric",
    value_name="value",
)
# Jeden wiersz = jedna metryka dla danej kampanii i dnia

Co zrobić po stronie biznesu

  • Unpivot miesięcznych kolumn (Jan, Feb, …) w raporcie sezonowości.
  • Przygotowanie danych pod facet grid w seaborn/plotly.
  • Łączenie metryk GA4 i Ads w jednej kolumnie przed concat.

W skrócie

melt to odwrotność pivot. Bez tidy formatu większość bibliotek wykresów wymaga hacków - melt robi to jednym wywołaniem.