So erstellen sie eine kovarianzmatrix in python
Kovarianz ist ein Maß dafür, wie Änderungen einer Variablen mit Änderungen einer zweiten Variablen verbunden sind. Genauer gesagt ist es ein Maß für den Grad, in dem zwei Variablen linear miteinander verbunden sind.
Eine Kovarianzmatrix ist eine quadratische Matrix, die die Kovarianz zwischen vielen verschiedenen Variablen zeigt. Dies kann eine nützliche Methode sein, um zu verstehen, wie verschiedene Variablen in einem Datensatz zusammenhängen.
Das folgende Beispiel zeigt, wie man eine Kovarianzmatrix in Python erstellt.
So erstellen Sie eine Kovarianzmatrix in Python
Führen Sie die folgenden Schritte aus, um eine Kovarianzmatrix in Python zu erstellen.
Schritt 1: Erstellen Sie den Datensatz.
Zunächst erstellen wir einen Datensatz mit den Testergebnissen von 10 verschiedenen Schülern in drei Fächern: Mathematik, Naturwissenschaften und Geschichte.
import numpy as np math = [84, 82, 81, 89, 73, 94, 92, 70, 88, 95] science = [85, 82, 72, 77, 75, 89, 95, 84, 77, 94] history = [97, 94, 93, 95, 88, 82, 78, 84, 69, 78] data = np.array([math, science, history])
Schritt 2: Erstellen Sie die Kovarianzmatrix.
Als Nächstes erstellen wir die Kovarianzmatrix für diesen Datensatz mithilfe der Funktion numpy cov() und geben dabei an, dass Bias = True ist, damit wir die Populationskovarianzmatrix berechnen können.
np.cov(data, bias= True )
array([[ 64.96, 33.2, -24.44],
[33.2, 56.4, -24.1],
[-24.44, -24.1, 75.56]])
Schritt 3: Interpretieren Sie die Kovarianzmatrix.
Die Werte entlang der Diagonalen der Matrix sind einfach die Varianzen jedes Subjekts. Zum Beispiel:
- Die Varianz der Mathematikergebnisse beträgt 64,96
- Die Varianz der naturwissenschaftlichen Ergebnisse beträgt 56,4
- Die historische Score-Varianz beträgt 75,56
Die anderen Werte der Matrix stellen die Kovarianzen zwischen den verschiedenen Subjekten dar. Zum Beispiel:
- Die Kovarianz zwischen den Ergebnissen in Mathematik und Naturwissenschaften beträgt 33,2.
- Die Kovarianz zwischen Mathematik- und Geschichtsergebnissen beträgt -24,44.
- Die Kovarianz zwischen den Ergebnissen in Naturwissenschaften und Geschichte beträgt -24,1.
Eine positive Zahl für die Kovarianz zeigt an, dass zwei Variablen tendenziell gleichzeitig zunehmen oder abnehmen. Beispielsweise weisen Mathematik und Naturwissenschaften eine positive Kovarianz (33,2) auf, was darauf hindeutet, dass Schüler, die in Mathematik gute Ergebnisse erzielen, tendenziell auch in Naturwissenschaften gute Ergebnisse erzielen. Umgekehrt schneiden Schüler, die in Mathematik schlecht abschneiden, tendenziell auch in den Naturwissenschaften schlecht ab.
Eine negative Zahl für die Kovarianz bedeutet, dass eine zweite Variable tendenziell abnimmt, wenn eine Variable zunimmt. Beispielsweise haben Mathematik und Geschichte eine negative Kovarianz (-24,44), was darauf hindeutet, dass Schüler, die in Mathematik gute Ergebnisse erzielen, tendenziell schlechte Ergebnisse in Geschichte erzielen. Umgekehrt erzielen Schüler, die in Mathematik schlecht abschneiden, tendenziell gute Ergebnisse in Geschichte.
Schritt 4: Visualisieren Sie die Kovarianzmatrix (optional).
Sie können die Kovarianzmatrix mit der Funktion heatmap() des Pakets seaborn visualisieren:
import seaborn as sns import matplotlib.pyplot as plt cov = np.cov(data, bias=True) labs = ['math', 'science', 'history'] sns.heatmap(cov, annot=True, fmt='g', xticklabels=labs, yticklabels=labs) plt.show()
Sie können die Farbpalette auch ändern, indem Sie das Argument cmap angeben:
sns.heatmap(cov, annot=True, fmt='g', xticklabels=labs, yticklabels=labs, cmap=' YlGnBu ')
plt.show()
Weitere Informationen zum Formatieren dieser Heatmap finden Sie in der Seaborn-Dokumentation .