# 统计是否被诈骗数量分布 num_fraud = data[data['fraud'] == 1.0].shape[0] # fraud = 1.0 表示 被诈骗数据 num_no_fraud = ??? # fraud = 0.0 表示 未被诈骗数据 ???填什么
时间: 2024-04-02 17:33:46 浏览: 82
你可以使用以下代码来统计未被诈骗数据的数量:
```python
num_no_fraud = data[data['fraud'] == 0.0].shape[0]
```
其中,`data['fraud'] == 0.0` 表示选出 fraud 列中值为 0.0 的行,`.shape[0]` 表示返回选出行的数量。
相关问题
#第 2步:计算 表NotFraud 的相关性 # 这里计算 除 fraud列 的剩余7列的相关性 corr_Fraud = Fraud.loc[:, Fraud.columns != 'fraud'].corr() # 查看计算结果 corr_Fraud
你可以使用 `corr()` 方法来计算相关性,如下所示:
```python
# 计算表Fraud的相关性
corr_Fraud = Fraud.loc[:, Fraud.columns != 'fraud'].corr()
print(corr_Fraud)
```
这将计算 `Fraud` 表中除 `fraud` 列以外的所有列(即剩余的七列)两两之间的相关性,并存储在 `corr_Fraud` 中。使用 `loc[]` 方法可以按标签选取行或列, `[:, Fraud.columns != 'fraud']` 表示选取所有行,并且选取除 `fraud` 列以外的所有列。最后使用 `print()` 函数输出相关性矩阵。
df1 = data.query('fraud == 1') df2 = data.query('fraud == 0').sample(len(df1)) data = pd.concat([df1,df2],axis=0).reset_index(drop=True)
这段代码的作用是将原始数据集按照欺诈标记fraud进行分组,得到欺诈数据集df1和非欺诈数据集df2。然后从非欺诈数据集df2中随机抽取与欺诈数据集df1相同数量的样本,得到新的非欺诈数据集df2。最后将欺诈数据集df1和新的非欺诈数据集df2进行合并,得到新的数据集data,并重新设置索引。这个过程叫做欺诈数据集的下采样,目的是为了平衡欺诈和非欺诈数据的比例。
阅读全文