NumPy-Korrelationsfunktion
- Korrelation in NumPy
-
Verwenden Sie die Funktion
np.corrcoef()
, um die Korrelation in Python zu implementieren - Verwenden Sie die Korrelation mit der Matplotlib-Bibliothek, um Korrelationsdiagramme zu erstellen
Dieses Tutorial demonstriert die Korrelationsfunktion np.corrcoef()
der NumPy-Bibliothek in Python.
Korrelation in NumPy
Der Korrelationskoeffizient ist ein nummerierter Wert, der die Beziehung zwischen den gegebenen Merkmalen des Datensatzes angibt.
Die Korrelation kann entweder positiv sein, was bedeutet, dass sie eine direkte Beziehung haben und eine Zunahme eines Merkmals zu einem anderen führen würde. Eine negative Korrelation ist ebenfalls möglich, was darauf hindeutet, dass beide Merkmale in einem umgekehrten Verhältnis zueinander stehen, was bedeutet, dass ein Anstieg des einen Merkmals zu einem Rückgang des anderen führen würde.
Im Folgenden sind einige verschiedene Korrelationen aufgeführt.
- Korrelation nach Pearson
- Kendalls Korrelation
- Korrelation nach Spearman
Die NumPy-Bibliotheksfunktion np.corrcoef()
konzentriert sich jedoch nur auf den Korrelationswert von Pearson und berechnet ihn. Die anderen Korrelationen können mit direkten Funktionen gefunden werden, die von der SciPy-Bibliothek bereitgestellt werden.
Dieses Tutorial konzentriert sich ausschliesslich auf die Funktion np.coefcorr()
und deren Implementierung.
Verwenden Sie die Funktion np.corrcoef()
, um die Korrelation in Python zu implementieren
Die Funktion np.corrcoef()
aus der Bibliothek NumPy
wird verwendet, um eine Matrix von Korrelationskoeffizienten nach Pearson zwischen zwei beliebigen Arrays zu erhalten, vorausgesetzt, dass beide Arrays die gleiche Form haben. Diese Funktion gibt im Allgemeinen ein zweidimensionales Array zurück, das die Korrelationskoeffizienten darstellt.
Importieren Sie die NumPy-Bibliothek in den Python-Code, um diese Funktion ohne Fehler zu implementieren.
Beispielcode:
import numpy as np
a = np.arange(20, 30)
b = np.array([8, 12, 29, 33, 60, 48, 21, 44, 78, 96])
x = np.corrcoef(a, b)
print(x)
Ausgang:
[[1. 0.82449488]
[0.82449488 1. ]]
Die Hauptdiagonale der Ausgabematrix hat immer alle Werte als einen. In unserem Fall ist der Wert des oberen linken Elements eins, da es den Korrelationskoeffizienten von x mit x zurückgibt, und das untere rechte Element gibt den Korrelationskoeffizienten von y mit y zurück.
Die Hauptwerte, die aus der gegebenen Ausgangsmatrix berücksichtigt werden müssen, sind die anderen beiden Werte. Dieser Wert ergibt sich für unseren Fall als ungefähr 0.82
. Darüber hinaus haben diese beiden Elemente immer die gleichen Werte.
Verwenden Sie die Korrelation mit der Matplotlib-Bibliothek, um Korrelationsdiagramme zu erstellen
Die NumPy-Bibliothek kann auch zusammen mit der Matplotlib-Bibliothek verwendet werden, sodass der Benutzer Korrelationsdiagramme als Ausgabe erhalten kann. Der folgende Code verwendet die Korrelationsfunktion corrcoef()
mit der Matplotlib-Bibliothek, um Korrelationsdiagramme zu erstellen.
Beispielcode:
import matplotlib.pyplot as plt
import matplotlib
import numpy as np
x = np.arange(20, 30)
y = np.array([8, 12, 29, 33, 60, 48, 21, 44, 78, 96])
print(np.corrcoef(x, y))
# %matplotlib inline
matplotlib.style.use("ggplot")
plt.scatter(x, y)
plt.show()
Ausgang:
Die obige Grafik diktiert eine positive Korrelation, da die Grafik einen allgemeinen Aufwärtstrend zu haben scheint. Diese Art von Diagramm funktioniert sogar noch besser für eine größere Anzahl von Elementen in den angegebenen Arrays.
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn