一、背景介绍
这个数据来自欧洲信用卡交易数据,总共包括两天的交易数据。在284,807次交易中发现了492例诈骗。数据集极其不平衡,诈骗频率只占了交易频次的0.172%。
二、观察数据
1.数据源
本文的数据源从Kaggle官方网站下载,该数据集共计284807条数据,变量总数为31个。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df1 = pd.read_csv('creditcard.csv')
df1['Class'].value_counts()
2. 目标变量
通过平台描述和数据框查看,V1,V2,…V28是主成分,Time和Amount是没有经过PCA处理的。Time是每次交易与第一次交易之间距离的时间,以秒计。Amount代表消费金额,Class代表响应变量,1代表欺诈,0代表正常,除此之外没有缺失数据。
三、采样处理
通过数据可视化可以看出,数据中欺诈样本占比极小,在284807次交易中仅有492例欺诈,说明该数据属于不均衡样本,对于不平衡样本的处理方法有很多,比如:
- 欠采样(从好样本里面随机抽取与坏样本同样多的数据进行模型拟合,但是抛弃了大数据好样本的数据,可能会造成较大