gpt4 book ai didi

python - python 从其他列表的平均值创建新列表

转载 作者:行者123 更新时间:2023-12-01 02:13:48 25 4
gpt4 key购买 nike

我正在尝试从三个数据集中找到一条平均线。我有这段代码来创建一个包含其他三行平均值的新列表。

for i in range(0,len(y1)):
sum=y1[i]+y2[i]+y3[i]
sum=sum/3
average.append(sum)

但是由于某种原因,该代码块没有输出正确的平均值

y1[i]+y2[i]+y3[i].

例如,列表 y1,y2,y3 的最后一个值为 41.72104029、39.29410479 和 39.24708382。然而,这个 for 循环会说这三个的平均值是 30.729766933333334。

感谢任何帮助!

最佳答案

我会以不同的方式执行此循环:

for k in zip(y1, y2, y3):
average.append(sum(k) / 3.0) # or, float(len(k)) instead of 3.0

这并不意味着您的循环有任何问题。数据很可能不在您期望的位置。所以,我认为你的问题在于数据 - 而不是循环。

对于

x = [1, 2, 41.72104029]
y = [3, 6, 39.29410479]
z = [1, 8, 39.24708382]

我得到:

[1.6666666666666667, 5.333333333333333, 40.08740963333333]

另一种变化:

average = [sum(k) / 3.0 for k in zip(x, y, z)]

关于python - python 从其他列表的平均值创建新列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48536061/

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