python - python groupby.apply中的值不匹配
问题描述
def _hit_rate(df):
df['hit'] = 1
return df['ca'].mean()
a = pd.DataFrame({'geo':['AP','AP','AP','SD','SD','SD'],'lower':[1.2,1.2,1.2,1.3,1.3,1.3],'ca':[1,1,1,2,2,2]})
print(a)
b = a.groupby(['geo']).apply(_hit_rate)
print(b)
我想在 中做一些动作_hit_rate()
,而不是返回平均值。但如果我这样做了,df 的值将在_hit_rate
功能上是错误的。df[df['geo'='SD']['ca']
意志等于,不是本身的df[df['geo'='AP']['ca']
价值 2 而是错误的 1。我对此感到困惑,请帮助我!
解决方案
推荐阅读
- java - 如何使用 Scanner (Java) 只读取一个值?
- java - 为什么 Integer 的泛型在打印时没有分配 String 的值发出错误?
- javascript - 我想将查询返回的结果保存在一个变量中并在另一个函数中使用它
- python - 数据增强功能不正确
- email - 使用第三方邮件发件人时“SPF DMARC: fail-unaligned”是否会导致错误率高(送达率低),以及如何解决
- c# - 这个图像相似度代码线程安全吗?
- javascript - React 中的 Worker 加载器
- java - 如何将改造 JSON 响应转换为列表?
- arrays - 如何从单词中删除空格,同时在shell中的数组中传递它
- c# - 使用带有构建器模式的流利界面