繁体   English   中英

如何计算 Python Pandas 数据框中值的平均值?

[英]How to calculate average of values in a Python Pandas Data Frame?

我的 Python Pandas 数据框有 2 列,分别是工资(金额)和获得该特定工资的员工总数(员工)(10 名员工获得 300 美元,20 名员工获得 200 美元,30 名员工获得 100 美元)。我应该计算平均值所有员工的工资。 有没有办法做到这一点? 我对 Python Pandas 还很陌生,所以任何帮助将不胜感激! 提前致谢。

   Amount  Staff
0     100     30
1     200     20
2     300     10  

这与您描述的完全一样-没有特殊技术。

df = pd.read_csv(io.StringIO("""   Amount  Staff
0     100     30
1     200     20
2     300     10"""), sep="\s+")

(df["Amount"] * df["Staff"]).sum() / df["Staff"].sum()

输出

166.66666666666666

我认为您可以通过定义使用mean - 总和/计数:

s = df.assign(Amount = df["Amount"].mul(df["Staff"])).sum()
print (s)
Amount    10000
Staff        60
dtype: int64

print (s.Amount / s.Staff)
166.66666666666666

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM