Przejdź do treści

Numpy. Funkcja np.percentile(). P90 wartości koszyka w segmencie paid search.

Na czym to polega w sklepie

Funkcja np.percentile zwraca wartość poniżej której leży określony procent obserwacji. W e-commerce średnia AOV bywa zafałszowana jednym zamówieniem B2B - percentyle dają stabilny próg dla segmentów VIP i alertów anomalii.

Przykład ze sklepu internetowego

Masz tablicę order_values z eksportu sklepu za marzec. Chcesz P90 koszyka dla sesji z Google Ads, żeby zdefiniować segment „high spender”:

import numpy as np

order_values = np.array([89.0, 120.0, 156.0, 199.0, 245.0, 312.0, 890.0, 12400.0])
p50 = np.percentile(order_values, 50)   # mediana AOV
p90 = np.percentile(order_values, 90)   # próg górnego segmentu
high_spenders = order_values[order_values >= p90]
# P90 odporny na pojedynczy outlier 12 400 PLN

Co zrobić po stronie biznesu

  • P95 session_duration z GA4 - sesje powyżej progu do audytu UX checkout.
  • Porównanie P75 AOV per kanał zamiast samej średniej w raporcie mediowym.
  • Pułapka: przy małej próbie (<30 zamówień) percentyle skaczą - nie ustawiaj progów CRM na jednym tygodniu.

W skrócie

np.percentile(arr, 90) to szybki próg segmentacji. Dla dużych plików GA4 licz percentyle na próbce lub po filtrze kanału - inaczej outliery B2B zdominują wynik.