Hoe de correlatie tussen twee kolommen in panda's te berekenen


U kunt de volgende syntaxis gebruiken om de correlatie tussen twee kolommen in een Panda DataFrame te berekenen:

 df[' column1 ']. corr (df[' column2 '])

De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld 1: Bereken de correlatie tussen twee kolommen

De volgende code laat zien hoe u de correlatie tussen kolommen in een Panda DataFrame berekent:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view first five rows of DataFrame
df. head ()

        points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6

#calculate correlation between points and assists
df[' points ']. corr (df[' assists '])

-0.359384

De correlatiecoëfficiënt is -0,359 . Omdat deze correlatie negatief is, vertelt dit ons dat punten en assists negatief gecorreleerd zijn.

Met andere woorden: naarmate de waarden in de puntenkolom toenemen, hebben de waarden in de assistskolom de neiging om af te nemen.

Voorbeeld 2: Bereken de correlatiesignificantie

Om te bepalen of een correlatiecoëfficiënt statistisch significant is of niet, kunt u de functie peersonr(x, y) uit de SciPy- bibliotheek gebruiken.

De volgende code laat zien hoe u deze functie in de praktijk kunt gebruiken:

 import pandas as pd
from scipy. stats import pearsonr

#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#calculate p-value of correlation coefficient between points and assists
pearsonr(df[' points '], df[' assists '])

(-0.359384, 0.38192)

De eerste waarde van de uitvoer geeft de correlatiecoëfficiënt (-0,359384) weer en de tweede waarde geeft de p-waarde (0,38192) weer die bij die correlatiecoëfficiënt hoort.

Omdat de p-waarde niet kleiner is dan α = 0,05, kunnen we concluderen dat de correlatie tussen punten en assists niet statistisch significant is.

Aanvullende bronnen

Hoe de Spearman Rank-correlatie in Python te berekenen
Hoe gedeeltelijke correlatie in Python te berekenen
Hoe kruiscorrelatie in Python te berekenen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert