Seite 1 von 1

Frage zur Varianzberechnung durch Numpy

Verfasst: Donnerstag 28. April 2011, 08:16
von smith0815
Hi

in habe ein Numpy-Array mit Werten von 0 -100 und möchte nun die Varianz berechen.

numpy.var(numpyArray)

Raus bekommen ich einen Wert von 2217.29056619 da kann doch was nicht stimmen oder?

Re: Frage zur Varianzberechnung durch Numpy

Verfasst: Donnerstag 28. April 2011, 08:47
von BlackJack
@smith0815: Vielleicht stimmt Deine Erwartung an die `var()`-Funktion nicht.

Code: Alles auswählen

In [627]: b
Out[627]: array([  0, 100])

In [628]: b.mean()
Out[628]: 50.0

In [629]: b - b.mean()
Out[629]: array([-50.,  50.])

In [630]: (b - b.mean())**2
Out[630]: array([ 2500.,  2500.])

In [631]: ((b - b.mean())**2).mean()
Out[631]: 2500.0

In [632]: b.var()
Out[632]: 2500.0
Die `var()`-Funktion ist wie in 631 definiert.

Re: Frage zur Varianzberechnung durch Numpy

Verfasst: Donnerstag 28. April 2011, 09:43
von /me
BlackJack hat geschrieben:@smith0815: Vielleicht stimmt Deine Erwartung an die `var()`-Funktion nicht.
Die Standardabweichung liegt damit bei etwa 47. Das spricht nicht gerade für eine ausgewogenen Verteilung der Daten im einem Intervall der Größe 100. Das sollte sich mit einem einfachen Blick auf die Daten zumindest absehen lassen.