gpt4 book ai didi

python - 在不使用 while 循环的情况下获取数据帧列中的平均值

转载 作者:太空宇宙 更新时间:2023-11-03 21:43:29 24 4
gpt4 key购买 nike

我正在尝试查找数据框中价格数据的总和。我当前的代码如下所示,必须有更好的方法来做到这一点

i=5
a = 0
while i<10
a = a + df.loc[i]["Price"]
i = i + 1
averg = a/5
print(averg)

最佳答案

首先请注意,您应该避免链式索引。这是模棱两可的,explicitly discouraged在文档中,您可以使用 pd.DataFrame.at 。此外,您可以使用+= 运算符来递增值。所以你可以重写为:

i = 5
a = 0
while i < 10
a += df.at[i, 'Price']
i += 1
avg = a/5
print(avg)

但是,请注意您可以使用 pd.DataFrame.loc组合行和索引标签并给出一个 pd.Series 对象。然后您可以使用 pd.Series.mean计算平均值:

avg = df.loc[5:10, 'Price'].mean()

通过这种方式,您还可以利用矢量化计算,而不是使用 Python 级循环。

关于python - 在不使用 while 循环的情况下获取数据帧列中的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52678664/

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