НачатьНачать бесплатно

Традиционный подход к обнаружению мошенничества

В этом упражнении вы попробуете обнаружить случаи мошенничества в наборе данных о кредитных картах «старым способом». Сначала вы определите пороговые значения на основе стандартных статистических показателей, чтобы разделить мошеннические и обычные транзакции. Затем применёте эти пороги к признакам для выявления мошенничества. Такой подход широко используется в командах по анализу мошенничества.

Статистические пороги часто определяются на основе средних значений наблюдений. Начнём упражнение с проверки того, различаются ли средние значения признаков для мошеннических и обычных случаев. Затем вы используете эту информацию для формирования разумных пороговых значений. В конце проверите, насколько эффективен этот метод для обнаружения мошенничества.

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