Zacznij terazZacznij za darmo

Wykrywanie oszustw tradycyjną metodą

W tym ćwiczeniu spróbujesz wykryć przypadki oszustw w zbiorze danych dotyczącym kart kredytowych – korzystając z "klasycznego podejścia". Najpierw wyznaczysz wartości progowe na podstawie typowych statystyk, aby oddzielić transakcje fraudowe od prawidłowych. Następnie użyjesz tych progów do wykrywania oszustw. To powszechna praktyka w zespołach zajmujących się analizą fraudów.

Progi statystyczne wyznacza się często na podstawie wartości średnich obserwacji. Zacznij od sprawdzenia, czy średnie wartości cech różnią się między transakcjami fraudowymi a prawidłowymi. Następnie wykorzystasz te informacje do ustalenia progów opartych na zdrowym rozsądku. Na koniec sprawdzisz, jak dobrze ta metoda sprawdza się w wykrywaniu oszustw.

Biblioteka pandas została już zaimportowana jako pd.

To ćwiczenie jest częścią kursu

Wykrywanie oszustw w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Użyj groupby(), aby pogrupować df według kolumny Class, i oblicz średnią cech.
  • Utwórz warunek: V1 mniejsze od -3 oraz V3 mniejsze od -5, aby oznaczyć potencjalne przypadki oszustwa.
  • Jako miarę skuteczności użyj funkcji crosstab z biblioteki pandas, aby porównać oznaczone przypadki oszustwa z rzeczywistymi.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Get the mean for each group
____.____(____).mean()

# Implement a rule for stating which cases are flagged as fraud
df['flag_as_fraud'] = np.where(np.logical_and(______), 1, 0)

# Create a crosstab of flagged fraud cases versus the actual fraud cases
print(____(df.Class, df.flag_as_fraud, rownames=['Actual Fraud'], colnames=['Flagged Fraud']))
Edytuj i uruchom kod