665 Stimmen

Ermitteln des Durchschnitts einer Liste

Wie finde ich den Mittelwert einer Liste in Python?

[1, 2, 3, 4]    2.5

4voto

Angenommen, dass

x = [
    [-5.01,-5.43,1.08,0.86,-2.67,4.94,-2.51,-2.25,5.56,1.03],
    [-8.12,-3.48,-5.52,-3.78,0.63,3.29,2.09,-2.13,2.86,-3.33],
    [-3.68,-3.54,1.66,-4.11,7.39,2.08,-2.59,-6.94,-2.26,4.33]
]

können Sie feststellen, dass x hat die Dimension 3*10, wenn Sie die mean zu jeder Zeile können Sie Folgendes eingeben

theMean = np.mean(x1,axis=1)

Vergessen Sie nicht import numpy as np

4voto

Für die Verwendung von reduce Um einen laufenden Durchschnitt zu ermitteln, müssen Sie nicht nur die Gesamtzahl, sondern auch die Gesamtzahl der bisher gesehenen Elemente erfassen. Da es sich dabei nicht um ein triviales Element in der Liste handelt, müssen Sie auch reduce ein zusätzliches Argument zum Falten.

>>> l = [15, 18, 2, 36, 12, 78, 5, 6, 9]
>>> running_average = reduce(lambda aggr, elem: (aggr[0] + elem, aggr[1]+1), l, (0.0,0))
>>> running_average[0]
(181.0, 9)
>>> running_average[0]/running_average[1]
20.111111111111111

2voto

user1871712 Punkte 165
l = [15, 18, 2, 36, 12, 78, 5, 6, 9]

l = map(float,l)
print '%.2f' %(sum(l)/len(l))

2voto

Integraty_beast Punkte 440

Finden Sie den Durchschnitt in der Liste Durch die Verwendung der folgenden PYTHON Code:

l = [15, 18, 2, 36, 12, 78, 5, 6, 9]
print(sum(l)//len(l))

Probieren Sie es einfach aus.

0voto

reubano Punkte 4501

Indem ich einige der oben genannten Antworten kombinierte, kam ich zu folgendem Ergebnis, das mit reduce funktioniert und nicht voraussetzt, dass Sie über L innerhalb der Reduzierungsfunktion zur Verfügung:

from operator import truediv

L = [15, 18, 2, 36, 12, 78, 5, 6, 9]

def sum_and_count(x, y):
    try:
        return (x[0] + y, x[1] + 1)
    except TypeError:
        return (x + y, 2)

truediv(*reduce(sum_and_count, L))

# prints 
20.11111111111111

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X