Doğrusal olmayan bir ilişkiyi nasıl test ederim?


37

Arsa 1 için basit bir korelasyon yaparak x ve y arasındaki ilişkiyi test edebilirim. arsa 1

İlişkinin doğrusal olmadığı ancak x ile y arasında net bir ilişki olan arsa 2 için, ilişkiyi nasıl test edebilir ve doğasını etiketleyebilirim? arsa 2

Yanıtlar:


35

... ilişki doğrusal değildir, ancak x ve y arasında açık bir ilişki vardır, ilişkiyi nasıl test edebilir ve doğasını etiketleyebilirim?

Bunu yapmanın bir yolu, örneğin genelleştirilmiş bir katkı modeli kullanarak yarı parametrik olarak tahmin edilen bir fonksiyonu olarak sığdırmak ve bu fonksiyonel tahminin sabit olup olmadığını test etmek ve ile arasında bir ilişki olmadığını göstermesidir . Bu yaklaşım sizi polinom regresyonu yapmaktan ve bazen polinomun sırası hakkında keyfi kararlar almaktan kurtarır.x y xyxyx

Özellikle, gözlemleriniz varsa, , modele uyabilirsin:(Yi,Xi)

E(Yi|Xi)=α+f(Xi)+εi

ve hipotezini test edin . Bunu , işlevi kullanarak yapabilirsiniz . Eğer sonucunuz ve tahmininiz ise, şunu yazabilirsiniz:H0:f(x)=0, xRgam()yx

library(mgcv) 
g <- gam(y ~ s(x)) 

Yazma summary(g), yukarıdaki hipotez testinin sonucunu size verecektir. İlişkinin niteliğini nitelemekle birlikte, bu en iyi şekilde bir komplo ile yapılabilir. Bunu yapmanın bir yolu R(yukarıdaki kodun zaten girildiğini varsayarsak)

plot(g,scheme=2)

Yanıt değişkeniniz ayrıksa (örneğin ikili), bu çerçeveye lojistik bir GAM (in R, family=binomialçağrınıza ekleyeceğiniz gam) yerleştirerek yerleştirebilirsiniz. Ayrıca, birden fazla öngörücünüz varsa, birden çok ek terim (veya normal doğrusal terimler) içerebilir veya çok değişkenli işlevler ekleyebilirsiniz; örneğin yordayıcınız varsa . Varsayılan yöntemleri kullanıyorsanız, burada çok fazla esneklik olmasına rağmen ilişkinin karmaşıklığı otomatik olarak çapraz doğrulama ile seçilir - ilgileniyorsanız yardım dosyasına bakın .f(x,z)x, zgam


1
Bu yaklaşımı a'nın iki tarafındaki korelasyona tercih ediyorum çünkü ilişkiyi bütün olarak inceliyor. Ayrıca parametrik modelden daha iyidir, bu yüzden bunun yerine bunu kabul ettim. x=a
user1447630 9:12

@ user1447630 Bu ilişki için bir modeldir. Polinom lineer regresyon veya lineer olmayan regresyon ve ilave modeller, fonksiyonel bir ilişkiyi karakterize etmenin yollarıdır. Bunlardan herhangi birini anlatabilirdim. Ama bir dernek ölçüsü istedin, ben de sana diğer olası korelasyon biçimlerini verdim. Macro'nun cevabı ne kadar güzel olsa da, işlevsel bir ilişkiye uyuyor ancak bir ilişkilendirme ölçütü vermiyor.
Michael Chernick 10:12

1
@Michael, hangi soruyu okuduğunu bilmiyorum ama OP bir dernek ölçüsü için değil bir dernek için nasıl test yapılacağını sordu . Her durumda, cevabınız ne kadar güzel olursa olsun (ve bunun , değişim noktasının nerede gerçekleştiği konusunda oldukça güçlü bir bilgi gerektirdiği gerçeğini göz ardı ederek ), genel olarak bu sorudaki spesifik arsaya aşırı uyarlandığını düşünüyorum. "doğrusal olmayan ilişki" sorunu.
Makro

3
@Michael, yorumunuz ( "soru, korelasyon kavramının nasıl genelleştirileceği ile ilgiliydi." ) Ve verdiğiniz istatistiki "argüman" (btw, "katsayıların ve modelin kesinliği testi" doğrusal bir modelde budur. (bir korelasyonu sınamakla aynı) gerçekler göz önüne alındığında hiçbir anlam ifade etmiyor, bu yüzden onları ele almayacağım. Ancak, "..senin verdikten sonra benimki kabul edilmedi ve sizinki kabul edildi ... Ben sadece bunun doğru olmadığını hissettim" cevabınız için topluma yararlı bir şey değil, sadece rep puanların tespitini yansıtan bir kampanya var.
Makro

5
@Macro ve Michael, ve arasındaki ilişkinin modelini yarı / parametrik olmayan bir şekilde sığdırmakla , ikisi arasındaki ilişkiyi test etmenin bir yoludur. Böyle bir test, her birinin önerdiğiniz farklı yöntemlerle ilişki derecesini ölçerek genişletilebilir. Sanırım hem cevaplar hem de takipler benim için oldukça faydalı oldu , reklam hominemini sans etti . Ancak benim sorum, model uyumu olarak yorumlanabilecek "doğasını nasıl etiketleyebileceğimizi" içerdiğinden Macro'nun cevabına sadık kalacağım. yxy
user1447630

14

Doğrusal olmayan ilişki monotonik bir sıralama olsaydı (Spearman's rho) uygun olurdu. Örneğinizde, eğrinin monotonal olarak artıştan montonik olarak azalmaya doğru değiştiği, ilk türevinin eşit olduğu noktada olduğu gibi bir parabolün yaptığı gibi net bir küçük bölge var .0

(En söz bazı modelleme bu değişikliğin noktası oluşur (ampirik bilgi ötesinde) bilgi varsa bence o zaman pozitif olarak korelasyon karakterize ve setinde Spearman rho kullanabilirsiniz) çiftleri nerede bu korelasyonun bir tahminini sağlamak ve için Spearman'ın korelasyonunun bir başka tahminini kullanmak için> , korelasyonun negatif olduğu yerde. Bu iki tahmin daha sonra ve arasındaki korelasyon yapısını karakterize eder ve tüm verileri kullanarak tahmin edildiğinde yakın olacak bir korelasyon tahmininin aksine , bu tahminler hem büyük hem de işaret bakımından zıt olacaktır.( x , y ) x < bir x > , bir X -Y 0x=a(x,y)x<ax>axy0

Bazıları sadece ampirik bilgilerin ( yani gözlenen çiftlerin bunu haklı çıkarmak için yeterli olduğunu iddia edebilir .(x,y)


Temel olarak, xy y ilişkisini iki bölüme ayırırdım. X = a'nın altında, Spearman'ın rho korelasyonu pozitiftir. X = a'nın üstünde, Spearman's rho ile korelasyon negatiftir. Bu yaklaşımı seviyorum. Bununla birlikte, aynı zamanda parametrik x arasındaki ilişki olup olmadığını test bir yolu vardır ve y bir ters parabol örneğin, uygun , burada negatif. Belki de, bu özel bir istatistiksel test gerektiriyor? ay=ax2+bx+ca
kullanici1447630,

1
Bunun için, OLS doğrusal regresyon deyimini kullanarak ikinci dereceden bir modele uyursunuz ve a katsayısının 0'dan büyük olduğu standart bir istatistiksel test yaparsınız (tek kuyruklu t testi).
Michael Chernick

1
@Michael, son yorumunuzla ilgili olarak, eğer sıfır civarında simetrik olarak dağılmazsa, ve arasında büyük bir eşliklilik olabilir . Bu muhtemelen bir regresyon katsayısı için standart -testini etkileyeceğinden, olasılık oran testi daha uygun olabilir, değil mi? x x 2 txxx2t
Makro

@ Makro x ve x arasında yüksek derecede bir korelasyon varsa , öneriniz iyi olabilir. Ancak, eş değişkenler ve korelasyon gösterse de, bireysel t testlerinin katsayılara uygulanmasının yaygın olduğunu düşünüyorum . Yüksek collinearity katsayıları çok dengesiz kılar çünkü tanımlanabilirlik neredeyse kaybedilir. Bu gibi durumlarda, eş değişkenlerin katsayıları üzerinde herhangi bir test yapmak mantıklı gelmeyebilir. 1 2212
Michael Chernick


0

Anlayışım burada yanlışsa biri beni düzeltir ancak doğrusal olmayan değişkenlerle baş etmenin bir yolu doğrusal bir yaklaşım kullanmaktır. Bu nedenle, örneğin, üstel dağılımın günlüğünü almak, değişkeni normal dağılım olarak değerlendirmenize izin vermelidir. Daha sonra herhangi bir doğrusal regresyon gibi problemi çözmek için kullanılabilir.


8
Bunun soruyu gerçekten cevapladığını sanmıyorum. Günlükleri almak, doğrusal bir yaklaşım yapmakla aynı şey değildir. Ayrıca, günlükleri alsanız bile, orijinal değişkenin günlüğünün normal olarak dağıtılmış bir değişken olduğu dağıtım, üstel dağıtım değil, lognormal dağıtımdır . Bununla birlikte, ne bağımsız ne de bağımlı değişkenin doğrusal regresyonun uygun olması için normal olarak dağıtılması gerekmemektedir - buradaki mesele, değişkenler arasındaki ilişkidir, marjinal dağılımları değil.
Silverfish

0

İki değişken arasındaki doğrusal olmayan ilişkiyi tespit etmek için genel katkı modelini kullandım, ancak son zamanlarda nlcorR'deki paket aracılığıyla uygulanan doğrusal olmayan ilişkiyi öğrendim , bu yöntemi Pearson korelasyonu ile aynı şekilde uygulayabilirsiniz. korelasyon katsayısı, Pearson korelasyonunda olduğu gibi 0 ile 1 arasındadır ve -1 ile 1 arasında değildir. Daha yüksek bir korelasyon katsayısı, doğrusal olmayan güçlü bir ilişkinin varlığına işaret eder. Diyelim iki zaman serisi üstlenecek x2ve y2aşağıdaki gibi iki zaman serisi arasındaki doğrusal olmayan ilişki test edilir

install.packages("devtools") 
library(devtools)
install_github("ProcessMiner/nlcor")
library(nlcor)
c <- nlcor(x2, y2, plt = T)
c$cor.estimate
[1] 0.897205

İki değişkenin doğrusal olmayan ilişki ile güçlü bir şekilde ilişkili olduğu görülüyor, ayrıca korelasyon katsayısı için ayarlanmış p-değerini de elde edebilirsiniz.

c$adjusted.p.value
[1] 0

Sonuçları da çizebilirsiniz

print(c$cor.plot)

Daha fazla detay için bu linki görüntüleyebilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.