Sobes.tech
Middle — Senior

Hogyan találjuk meg az utolsó vásárlást személyenként az adatokban?

sobes.tech MI

Válasz az MI-től

Az adatokban egy személy utolsó vásárlásának megtalálásához általában csoportosítani kell az adatokat a személy azonosítója szerint, és kiválasztani a legnagyobb vásárlási dátummal rendelkező rekordot. Például, ha az adatok egy user_id, purchase_date és purchase_id oszlopokat tartalmazó táblában vannak, akkor az alábbi SQL lekérdezést használhatja:

SELECT user_id, purchase_id, purchase_date
FROM purchases p1
WHERE purchase_date = (
  SELECT MAX(purchase_date)
  FROM purchases p2
  WHERE p2.user_id = p1.user_id
)

Pythonban pandas használatával így lehet megcsinálni:

import pandas as pd

# df - oszlopokkal rendelkező DataFrame: user_id, purchase_date, purchase_id
last_purchases = df.sort_values('purchase_date').groupby('user_id').tail(1)

Így minden felhasználó esetében megkapjuk a legutóbbi vásárlását dátum szerint.