R'de çoklu doğrusallık nasıl test edilir
Regresyon analizinde, çoklu doğrusallık , iki veya daha fazla yordayıcı değişkenin regresyon modelinde benzersiz veya bağımsız bilgi sağlamayacak şekilde birbiriyle yüksek düzeyde korelasyona sahip olması durumunda ortaya çıkar.
Yordayıcı değişkenler arasındaki korelasyon derecesi yeterince yüksekse, bu durum regresyon modelinin yerleştirilmesinde ve yorumlanmasında sorunlara neden olabilir.
Bir regresyon modelinde çoklu doğrusallığı tespit etmenin en basit yolu, varyans enflasyon faktörü olarak bilinen ve genellikle VIF olarak kısaltılan bir ölçümü hesaplamaktır.
VIF, bir modeldeki yordayıcı değişkenler arasındaki ilişkinin gücünü ölçer. 1 ile pozitif sonsuz arasında bir değer alır.
VIF değerlerini yorumlamak için aşağıdaki temel kuralları kullanırız:
- VIF = 1: Belirli bir yordayıcı değişken ile modeldeki diğer yordayıcı değişkenler arasında korelasyon yoktur.
- VIF 1 ile 5 arasında: Belirli bir yordayıcı değişken ile modeldeki diğer yordayıcı değişkenler arasında orta düzeyde bir korelasyon vardır.
- VIF > 5 : Belirli bir yordayıcı değişken ile modeldeki diğer yordayıcı değişkenler arasında güçlü bir korelasyon vardır.
Aşağıdaki örnek, modeldeki her öngörücü değişken için VIF değerlerini hesaplayarak R’deki bir regresyon modelinde çoklu doğrusallığın nasıl tespit edileceğini gösterir.
Örnek: R’de çoklu bağlantı testi
Çeşitli basketbol oyuncuları hakkında bilgi içeren aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:
#create data frame df = data. frame (rating = c(90, 85, 82, 88, 94, 90, 76, 75, 87, 86), points=c(25, 20, 14, 16, 27, 20, 12, 15, 14, 19), assists=c(5, 7, 7, 8, 5, 7, 6, 9, 9, 5), rebounds=c(11, 8, 10, 6, 6, 9, 6, 10, 10, 7)) #view data frame df rating points assists rebounds 1 90 25 5 11 2 85 20 7 8 3 82 14 7 10 4 88 16 8 6 5 94 27 5 6 6 90 20 7 9 7 76 12 6 6 8 75 15 9 10 9 87 14 9 10 10 86 19 5 7
Yanıt değişkeni olarak puanlamayı ve tahmin değişkenleri olarak sayı , asist ve ribaundları kullanarak çoklu doğrusal regresyon modelini uydurmak istediğimizi varsayalım.
Modeldeki her tahmin değişkeninin VIF’sini hesaplamak için araç paketindeki vive() fonksiyonunu kullanabiliriz:
library (car) #define multiple linear regression model model <- lm(rating ~ points + assists + rebounds, data=df) #calculate the VIF for each predictor variable in the model lively(model) points assists rebounds 1.763977 1.959104 1.175030
Tahmin edici değişkenlerin her biri için VIF değerlerini görebiliriz:
- puan: 1.76
- asist: 1.96
- ribaund: 1.18
Modeldeki yordayıcı değişkenlerin VIF değerlerinin her biri 1’e yakın olduğundan modelde çoklu doğrusallık sorunu yaşanmamaktadır.
Not : Çoklu bağlantının modelinizde bir sorun olduğu ortaya çıkarsa, çoğu durumda en hızlı çözüm, bir veya daha fazla yüksek korelasyonlu değişkeni kaldırmaktır.
Bu genellikle kabul edilebilir bir çözümdür çünkü kaldırdığınız değişkenler zaten gereksizdir ve modele çok az benzersiz veya bağımsız bilgi katar.
Ek kaynaklar
Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
R’de çoklu doğrusal regresyon nasıl gerçekleştirilir
R’de QQ grafiği nasıl oluşturulur
R’de artık arsa nasıl oluşturulur