Jupyter中导入Excel数据的条件求和:仅统计HIT为Done的R-AMT总和
解决方法
你用groupby会返回Done和Away两种结果,是因为它会把HIT列里的所有不同值都单独分组求和。要只计算HIT为'Done'对应的R-AMT总和,直接先筛选符合条件的行再求和就行,给你两种简单易懂的方法:
方法1:直接筛选后求和
hit_volume = df[df['HIT'] == 'Done']['R-AMT'].sum()
- 先通过
df['HIT'] == 'Done'筛选出HIT列值为'Done'的所有行 - 再取这些行的R-AMT列,最后调用
sum()计算总和
方法2:用loc明确指定行和列
hit_volume = df.loc[df['HIT'] == 'Done', 'R-AMT'].sum()
loc的语法是loc[行条件, 列名],能更直观地定位到你需要的行和列,再执行求和操作
这样得到的hit_volume就是你要的仅HIT为'Done'时R-AMT的总和。
内容的提问来源于stack exchange,提问作者Rob
相关产品推荐
相关产品推荐

