专栏内已发布AB两题详细思路和代码
问题一:请绘制附件中“有无发生电信银行卡诈骗”比例的扇形图,并绘制 发生电信银行卡诈骗的案例中,“线上”和“线下”发生电信诈骗数量的柱状图。
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('Card Fraud.csv', encoding='GB18030')
df = pd.DataFrame(data)
# 统计电信银行卡诈骗比例
fraud_counts = df['Fraud'].value_counts(normalize=True)
# 绘制扇形图
plt.figure(figsize=(8, 8))
plt.pie(fraud_counts, labels=['Not Fraud', 'Fraud'], autopct='%1.1f%%', startangle=140)
plt.title('Fraud vs. Not Fraud Proportions')
plt.show()
# 仅在标记为诈骗的交易中统计线上和线下诈骗数量
fraud_df = df[df['Fraud'] == 1] # 选择诈骗案例
online_fraud_counts