Zacznij terazZacznij za darmo

Sprawdzanie proporcji między oszustwami a transakcjami legalnymi

W tym rozdziale będziesz pracować z plikiem creditcard_sampledata.csv – zbiorem danych zawierającym informacje o transakcjach kartą kredytową. Na szczęście przypadki oszustw stanowią zdecydowaną mniejszość spośród wszystkich transakcji.

Algorytmy uczenia maszynowego działają jednak najlepiej wtedy, gdy poszczególne klasy w zbiorze danych są mniej więcej równoliczne. Jeśli przypadków oszustw jest niewiele, model ma zbyt mało danych, żeby nauczyć się je rozpoznawać. To zjawisko nazywamy niezbalansowaniem klas i jest ono jednym z głównych wyzwań w wykrywaniu oszustw.

Przyjrzyjmy się temu zbiorowi danych i zobaczmy, na czym polega ten problem.

To ćwiczenie jest częścią kursu

Wykrywanie oszustw w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj pandas jako pd i wczytaj dane o kartach kredytowych, przypisując je do zmiennej df. Ten krok został już wykonany za ciebie.
  • Użyj .info(), aby wyświetlić informacje o df.
  • Użyj .value_counts(), aby sprawdzić liczbę oszukańczych i nieoszukańczych transakcji w kolumnie 'Class'. Wynik przypisz do zmiennej occ.
  • Oblicz udział oszukańczych transakcji w całkowitej liczbie transakcji w zbiorze danych.

Interaktywne ćwiczenie praktyczne

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

# Import pandas and read csv
import pandas as pd
df = pd.read_csv("creditcard_data.csv")

# Explore the features available in your dataframe
print(df.____)

# Count the occurrences of fraud and no fraud and print them
occ = df['____'].____()
print(occ)

# Print the ratio of fraud cases
print(occ / ____)
Edytuj i uruchom kod