使用pandas matplotlib numpy 进行数据分析和建模
import pandas as pd import matplotlib.pyplot as plt import numpy as np import os path='E:\唐宇迪数据集'+os.sep+'creditcard.csv' data=pd.read_csv(path) print(data.head())
上面v1--v28是已经提取好的特征
time 代表交易时间
0属于正常 1属于异常 二分类 ---->逻辑回归 映射成概率 大于某个数是某类
#查看class一列中0 1 的数量分别有多少
count_classes=pd.value_counts(data['Class'],sort=True).sort_index()
count_classes.plot(kind='bar')
plt.title('Fraud class histogram')
plt.xlabel('Class')
plt.ylabel('Frequency')
plt.show()
样本不均衡的解决方案
过采样 下采样
下采样 上面两种数据数量不均衡 方法让0和1的样本数量相同 让样本的数量同样少
过采样 1的样本进行生成数据 让0和1的数量一样多 让样本数量同样多