John Fox'un kitabı Uygulanan regresyon için bir R arkadaşı , uygulamalı regresyon modellemesi için mükemmel bir kaynaktır R
. Paket car
bu yanıtında boyunca kullanmak beraberindeki paketidir. Kitabın ayrıca ek bölümleri olan bir web sitesi de var .
Yanıtı dönüştürme (aka bağımlı değişken, sonuç)
R
lm
boxCox
car
λfamily="yjPower"
boxCox(my.regression.model, family="yjPower", plotit = TRUE)
Bu, aşağıdaki gibi bir arsa üretir:
λλ
Şimdi bağımlı değişkeni dönüştürmek için, işlevini kullanın yjPower
gelen car
paketin:
depvar.transformed <- yjPower(my.dependent.variable, lambda)
lambda
λboxCox
Önemli: Bağımlı değişkeni log-dönüştürmek yerine, bir GLM'ye bir log-link takmayı düşünmelisiniz. İşte size daha fazla bilgi veren bazı referanslar: birinci , ikinci , üçüncü . Bunu yapmak için R
, şunu kullanın glm
:
glm.mod <- glm(y~x1+x2, family=gaussian(link="log"))
y
Bağımlı değişkeniniz nerede x1
, x2
vs. bağımsız değişkenleriniz.
Prediktör dönüşümleri
Dönüşümleri kesinlikle olumlu belirleyicileri bağımlı değişkenin dönüşümden sonra maksimum olabilirlik tahmin edilebilir. Bunu yapmak için, işlevini kullanın boxTidwell
gelen car
(bkz orijinal kağıt için paketin burada ). Bunu böyle kullanın: boxTidwell(y~x1+x2, other.x=~x3+x4)
. Burada önemli olan seçenek olmasıdır other.x
olan regresyon şartlarını belirtir değil dönüştürülebilir için. Bu, tüm kategorik değişkenleriniz olacaktır. İşlev, aşağıdaki formun bir çıktısını üretir:
boxTidwell(prestige ~ income + education, other.x=~ type + poly(women, 2), data=Prestige)
Score Statistic p-value MLE of lambda
income -4.482406 0.0000074 -0.3476283
education 0.216991 0.8282154 1.2538274
income
λincome
incomenew=1/incomeold−−−−−−−−√
Sitede bağımsız değişkenlerin dönüşümüyle ilgili çok ilginç bir yazı da bu .
Dönüşümlerin dezavantajları
Log dönüşümlü bağımlı ve / veya bağımsız değişkenler nispeten kolay yorumlanabilse de, daha karmaşık olan diğer dönüşümlerin yorumu daha az sezgiseldir (en azından benim için). Örneğin, bağımlı değişkenler tarafından dönüştürüldükten sonra regresyon katsayılarını nasıl yorumlarsınız?1/y√λλ
Doğrusal olmayan ilişkileri modelleme
Lineer olmayan ilişkilere uyması için oldukça esnek olan iki yöntem kesirli polinomlar ve spline'lardır . Bu üç bildiri, her iki yönteme de çok iyi bir giriş sunmaktadır: Birinci , ikinci ve üçüncü . Ayrıca kesirli polinomlar hakkında bir kitap da var R
. R
Paketmfp
uygular fraksiyonel polinomları değişkenli. Bu sunum kesirli polinomlar hakkında bilgilendirici olabilir. Spline'lara uyması için , paketten veya işlevlerden işlevi gam
(genelleştirilmiş katkı modelleri, mükemmel bir giriş için buraya bakınız R
) kullanabilirsiniz.mgcv
ns
(doğal kübik spline) ve bs
(kübik B-spline) paketten splines
( bu fonksiyonların kullanımı için buraya bakınız ). İşlevini gam
kullanarak spline'ları kullanarak hangi belirleyicilere uyacağınızı belirleyebilirsiniz s()
:
my.gam <- gam(y~s(x1) + x2, family=gaussian())
burada, x1
bir spline kullanılarak ve x2
normal bir lineer regresyonda olduğu gibi lineer olarak takılabilir . İçinde gam
dağıtım ailesini ve link işlevini olduğu gibi belirleyebilirsiniz glm
. Böylece log-link işlevine sahip bir modele uyması için, seçeneği family=gaussian(link="log")
içinde gam
olduğu gibi belirtebilirsiniz glm
.
Bu yazıya siteden bir göz atın .