Berechnung der Kovarianz mit Python und Numpy

Ich versuche herauszufinden, wie berechnet sich die Kovarianzmatrix mit der Python-Numpy-Funktion cov. Wenn ich den pass es zwei ein-dimensionale arrays, bekomme ich wieder eine 2x2-matrix der Ergebnisse. Ich weiß nicht, was zu tun. Ich bin nicht groß auf Statistiken, aber ich glaube, dass die Kovarianzmatrix in einer solchen situation sollte eine einzelne Zahl. Diese ist, was ich Suche. Ich schrieb meine eigenen:

def cov(a, b):

    if len(a) != len(b):
        return

    a_mean = np.mean(a)
    b_mean = np.mean(b)

    sum = 0

    for i in range(0, len(a)):
        sum += ((a[i] - a_mean) * (b[i] - b_mean))

    return sum/(len(a)-1)

Funktioniert, aber ich glaube, dass die Numpy-version ist viel effizienter, wenn ich herausfinden könnte, wie es zu benutzen.

Weiß jemand, wie man die Numpy cov-Funktion durchführen, wie die, die ich schrieb?

Dank,

Dave

InformationsquelleAutor der Frage Dave | 2013-03-10

Schreibe einen Kommentar