ПочатиПочніть безкоштовно

Досліджуємо традиційний спосіб виявлення шахрайства

У цій вправі ви спробуєте знайти випадки шахрайства в нашому наборі даних про кредитні картки «по-старому». Спочатку ви визначите порогові значення, спираючись на поширені статистики, щоб розділити шахрайські та нешахрайські операції. Потім застосуєте ці пороги до ознак, щоб виявити шахрайство. Це поширена практика в командах аналітики шахрайства.

Статистичні пороги часто визначають, дивлячись на значення середнього спостережень. Почнімо з перевірки, чи відрізняються середні значення ознак між шахрайськими й нешахрайськими випадками. Далі ви використаєте цю інформацію, щоб задати зрозумілі пороги. Нарешті, перевірите, наскільки добре це працює для виявлення шахрайства.

pandas уже імпортовано як pd.

Ця вправа є частиною курсу

Виявлення шахрайства в Python

Переглянути курс

Інструкції до вправи

  • Використайте groupby(), щоб згрупувати df за Class і отримати середні значення ознак.
  • Створіть умову: V1 менше ніж -3 і V3 менше ніж -5, щоб позначати підозрілі (шахрайські) випадки.
  • Як міру якості застосуйте функцію crosstab з pandas, щоб порівняти наші позначені як шахрайські випадки з фактичними шахрайськими.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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']))
Редагувати та запускати код