我的数据集(称为“train”)是关于抵押贷款申请的。为了改进我对“已接受”(0/1)的预测,我正在尝试计算“贷款人接受率”,并希望将新列附加到我的数据集中。你知道吗
数据集是500k行,贷方id从0到6508不等,但并不是所有的id(整数)都存在。你知道吗
我试过:
方法1: 创建数据透视表。这样做有效:
train.pivot_table(index=['lender'], aggfunc='mean', values=['accepted'])
但是:我似乎无法将此透视表的结果附加到我的数据集:
不是直接的,在一行代码中。
不是间接地,通过将此透视表的结果添加到空数据帧,然后与“on=leander\u id”合并。
方法2: 使用groupby函数创建新列。我用了这个:
train['lender_ar'] = train.groupby('lender').transform('mean')
,但我得到:
ValueError: Wrong number of items passed 21, placement implies 1
我的数据集:
lender accepted
4536 1
2458 0
5710 1
5888 1
289 1
希望有人能帮忙!谢谢!你知道吗
我将尝试使用
df.join
作为原始数据集,平均值的维数将不同。你知道吗相关问题 更多 >
编程相关推荐