Wizualizacja danych
Z poprzedniego ćwiczenia wiemy, że stosunek liczby oszustw do transakcji nieoszukańczych jest bardzo niski. Możesz coś z tym zrobić – na przykład zastosować ponowne próbkowanie danych, o czym opowiada następny film.
W tym ćwiczeniu przyjrzysz się danym i zwizualizujesz proporcje między oszustwami a rzetelnymi transakcjami. Zanim wprowadzisz jakiekolwiek zmiany w danych, warto je najpierw dokładnie obejrzeć – to zawsze dobry punkt startowy w analizie oszustw.
Poza tym, gdy rozmawiasz ze współpracownikami, jeden wykres potrafi bardzo wyraźnie pokazać, że mamy do czynienia z silnie niezrównoważonymi danymi.
Utwórzmy wykres, który zilustruje proporcje między punktami danych oznaczonymi jako oszustwo i jako rzetelna transakcja w zbiorze danych df.
Funkcja prep_data() jest już załadowana w twoim środowisku pracy, podobnie jak matplotlib.pyplot jako plt.
To ćwiczenie jest częścią kursu
Wykrywanie oszustw w Pythonie
Instrukcje do ćwiczenia
Zdefiniuj funkcję
plot_data(X, y), która wyświetli zbiór cechXz etykietamiyna wykresie punktowym. Ta część została już za ciebie przygotowana.Zastosuj funkcję
prep_data()na zbiorze danychdf, aby utworzyć zbiór cechXi etykietyy.Uruchom funkcję
plot_data()na otrzymanychXiy, aby zwizualizować wyniki.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Define a function to create a scatter plot of our data and labels
def plot_data(X, y):
plt.scatter(X[y == 0, 0], X[y == 0, 1], label="Class #0", alpha=0.5, linewidth=0.15)
plt.scatter(X[y == 1, 0], X[y == 1, 1], label="Class #1", alpha=0.5, linewidth=0.15, c='r')
plt.legend()
return plt.show()
# Create X and y from the prep_data function
X, y = prep_data(____)
# Plot our data by running our plot data function on X and y
____(X, y)