【发布时间】:2021-04-03 17:49:02
【问题描述】:
我的数据框有一列包含名称、组和其他一些值。看起来是这样的,供参考
| Name | Group |
|---|---|
| John Doe | A |
| Joe Smith | A |
| James Brown | B |
我正在输入一个人的姓名,并将他们与上面突出显示的“comps”数据框进行比较。我本质上想在比较人员输入时创建一个置信度指数,如果该人在不同的组中,我希望将置信度指数减去 10。它看起来像这样:
input_name = Jim Jones, input_group = A
| Name | Group | Confidence |
|---|---|---|
| John Doe | A | 100 |
| Joe Smith | A | 100 |
| James Brown | B | 90 |
我目前拥有的代码是
if comps.loc[comps['Group'] == input_group]:
comps['Confidence'] = 100
else:
comps['Confidence'] = 90
当我运行它时,我得到了以下回溯:
ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
【问题讨论】:
-
所以你只是匹配组?因为
input_name = Jim Jones在您拥有的现有名称列表中没有接近 100% 匹配