gpt4 book ai didi

python - 获取 m 个值中 n 个错误回答的行

转载 作者:行者123 更新时间:2023-12-03 16:01:59 24 4
gpt4 key购买 nike

我有一个这样的数据框:

right_answer   rater1   rater2   rater3   item
1 1 1 2 S01
1 1 2 2 S02
2 1 2 1 S03
2 2 1 2 S04
我需要在“项目”中获取那些行或值,其中三个评分者中至少有两个给出了错误的答案。我已经可以检查所有评分者是否都同意此代码:
df.where(df[['rater1', 'rater2', 'rater3']].eq(df.iloc[:, 0], axis=0).all(1) == True)
我不想用多数票来计算列,因为也许我需要调整必须同意或不同意正确答案的评分者的数量。
感谢帮助

最佳答案

使用, DataFrame.filter 过滤包含 rater 等列的数据框,然后使用 DataFrame.ne 沿axis=0比较包含 rater 的列与专栏right_answer ,然后使用 DataFrame.sum 沿axis=1获取 raters 的数量谁答错了,用 Series.ge 创建一个 bool 掩码,最后使用这个 mask 过滤数据帧行:

mask = (
df.filter(like='rater')
.ne(df['right_answer'], axis=0).sum(axis=1).ge(2)
)

df = df[mask]
结果:
# print(df)

right_answer rater1 rater2 rater3 item
1 1 1 2 2 S02
2 2 1 2 1 S03

关于python - 获取 m 个值中 n 个错误回答的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62589836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com