gpt4 book ai didi

python - 迭代有效地计算平均值

转载 作者:太空宇宙 更新时间:2023-11-04 06:52:12 24 4
gpt4 key购买 nike

我有一长串整数:

my_list = [10,13,42,23,12,45,33,59,12]

我想计算第一个 i 的平均值数字,所有i0<i<n .

我基本上可以做到:

averages = [ sum(my_list[0:i]) * (1.0/i) for i in range(1,len(my_list)) ]

这给了我正确的结果,但我认为应该有一种更快的方法,因为我可以在下面的计算中使用以前的总和。

我想应该有一个更快的解决方案 numpy ,也许?

最佳答案

如何使用 numpy.cumsum

In [13]: import numpy as np

In [14]: my_list = [10,13,42,23,12,45,33,59,12]

In [15]: np.cumsum(my_list) / np.arange(1, len(my_list)+1, dtype=np.float)
Out[15]:
array([ 10. , 11.5 , 21.66666667, 22. ,
20. , 24.16666667, 25.42857143, 29.625 , 27.66666667])

关于python - 迭代有效地计算平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32514882/

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