我有 4 個長度相同的串列,并且希望對串列中的每個第 n 個元素進行平均,并從這些平均值中創建一個新串列。舉個例子:
y1 = [1, 2, 2, 4, 5]
y2 = [3, 6, 9, 12, 0]
y3 = [2, 3, 4, 5, 6]
y4 = [2, 1, 5, 7, 9]
預期的結果應該是:
y1234 = [2, 3, 5, 7, 5]
我怎樣才能做到這一點?
uj5u.com熱心網友回復:
您可以通過串列理解來做到這一點:
y1 = [1, 2, 2, 4, 5]
y2 = [3, 6, 9, 12, 0]
y3 = [2, 3, 4, 5, 6]
y4 = [2, 1, 5, 7, 9]
n_lists = 4
y1234 = [int(sum(x)/n_lists) for x in zip(y1, y2, y3, y4)]
請注意,在您的示例中,最后一個平均值為 4。
zip回傳一個元組,然后您可以將其發送到sum. 確保轉換int是您想要的(不是round或floor等等)
uj5u.com熱心網友回復:
您可以使用numpy.mean
np.array([y1, y2, y3, y4]).mean(axis=0)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/430305.html
上一篇:Flutter:串列中的操作
