So berechnen sie die korrelation in r mit fehlenden werten


Sie können die folgenden Methoden verwenden, um Korrelationskoeffizienten in R zu berechnen, wenn eine oder mehrere Variablen fehlende Werte aufweisen:

Methode 1: Berechnen Sie den Korrelationskoeffizienten mit vorhandenen fehlenden Werten

 cor(x, y, use=' complete.obs ')

Methode 2: Berechnen Sie die Korrelationsmatrix mit vorhandenen fehlenden Werten

 cor(df, use=' pairwise.complete.obs ')

Die folgenden Beispiele zeigen, wie die einzelnen Methoden in der Praxis angewendet werden.

Beispiel 1: Berechnen Sie den Korrelationskoeffizienten mit vorhandenen fehlenden Werten

Angenommen, wir versuchen, die Funktion cor() zu verwenden, um den Pearson-Korrelationskoeffizienten zwischen zwei Variablen zu berechnen, wenn fehlende Werte vorhanden sind:

 #create two variables
x <- c(70, 78, 90, 87, 84, NA, 91, 74, 83, 85)
y <- c(90, NA, 79, 86, 84, 83, 88, 92, 76, 75)

#attempt to calculate correlation coefficient between x and y
cor(x, y)

[1] NA

Die Funktion cor() gibt NA zurück, da wir nicht angegeben haben, wie mit fehlenden Werten umgegangen werden soll.

Um dieses Problem zu vermeiden, können wir das Argument use=’complete.obs‘ verwenden, damit R weiß, dass es nur paarweise Beobachtungen verwenden soll, bei denen beide Werte vorhanden sind:

 #create two variables
x <- c(70, 78, 90, 87, 84, NA, 91, 74, 83, 85)
y <- c(90, NA, 79, 86, 84, 83, 88, 92, 76, 75)

#calculate correlation coefficient between x and y
cor(x, y, use=' complete.obs ')

[1] -0.4888749

Der Korrelationskoeffizient zwischen den beiden Variablen beträgt -0,488749 .

Beachten Sie, dass die Funktion cor() bei der Berechnung des Korrelationskoeffizienten nur beide paarweisen Kombinationen verwendet hat, bei denen Werte vorhanden waren.

Beispiel 2: Berechnen Sie die Korrelationsmatrix mit vorhandenen fehlenden Werten

Angenommen, wir versuchen, mit der Funktion cor() eine Korrelationsmatrix für einen Datenrahmen mit drei Variablen zu erstellen, wenn fehlende Werte vorhanden sind:

 #create data frame with some missing values
df <- data. frame (x=c(70, 78, 90, 87, 84, NA, 91, 74, 83, 85),
                 y=c(90, NA, 79, 86, 84, 83, 88, 92, 76, 75),
                 z=c(57, 57, 58, 59, 60, 78, 81, 83, NA, 90))

#attempt to create correlation matrix for variables in data frame
cor(df)

   X Y Z
x 1 NA NA
y NA 1 NA
z NA NA 1

Die Funktion cor() gibt an mehreren Stellen NA zurück, da wir nicht angegeben haben, wie mit fehlenden Werten umgegangen werden soll.

Um dieses Problem zu vermeiden, können wir das Argument use=’pairwise.complete.obs‘ verwenden, damit R weiß, dass es nur paarweise Beobachtungen verwenden soll, bei denen beide Werte vorhanden sind:

 #create data frame with some missing values
df <- data. frame (x=c(70, 78, 90, 87, 84, NA, 91, 74, 83, 85),
                 y=c(90, NA, 79, 86, 84, 83, 88, 92, 76, 75),
                 z=c(57, 57, 58, 59, 60, 78, 81, 83, NA, 90))

#create correlation matrix for variables using only pairwise complete observations
cor(df, use=' pairwise.complete.obs ')

           X Y Z
x 1.0000000 -0.4888749 0.1311651
y -0.4888749 1.0000000 -0.1562371
z 0.1311651 -0.1562371 1.0000000

Die Korrelationskoeffizienten für jede paarweise Kombination von Variablen in der Datenbank werden jetzt angezeigt.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in R ausführen:

So ermitteln Sie den P-Wert des Korrelationskoeffizienten in R
So berechnen Sie die Spearman-Korrelation in R
So berechnen Sie die gleitende Korrelation in R

Einen Kommentar hinzufügen

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