Przejdź do treści

Pandas. Metoda df.astype(). Wymuszenie typów kategorii produktów i flag kampanii.

Na czym to polega w sklepie

Metoda df.astype konwertuje kolumny na wskazany typ danych. Typ category dla kolumn o niskiej kardynalności (kanał, kraj, kategoria produktu) redukuje RAM przy milionach wierszy sesji e-commerce.

Przykład ze sklepu internetowego

Masz 2 mln wierszy sesji GA4 - kolumny channel i device są obiektami string, co marnuje pamięć:

import pandas as pd

sessions = pd.read_csv("ga4_sessions_big.csv")
sessions = sessions.astype({
    "channel": "category",
    "device_category": "category",
    "country": "category",
    "is_conversion": "bool",
    "session_id": "string",
})
# RAM spada, groupby przyspiesza na kategoriach

Co zrobić po stronie biznesu

  • Konwersja order_date na "datetime64[ns]" przed resample.
  • Flagi is_paid / is_organic jako bool zamiast 0/1 int.
  • SKU jako string - unikasz utraty zer wiodących w item_id.

W skrócie

astype po wczytaniu to hygiene danych. category dla wymiarów marketingowych to prosta optymalizacja przy dużych plikach GA4.