R ile lineer modeller nasıl kurulur?

0 beğenilme 0 beğenilmeme
58 kez görüntülendi

Lineer modeller nasıl kurulur, istatistiki anlamlılık düzeyleri nasıl ölçülür, sonuçlar nasıl yorumlanır?

3, Kasım, 2017 Uygulamalı Bilgisayar Bilimi kategorisinde Salih Durhan (1,271 puan) tarafından  soruldu
3, Kasım, 2017 Salih Durhan tarafından düzenlendi

1 cevap

0 beğenilme 0 beğenilmeme

Seçtiğimiz bir bağımlı $y$ değişkenini, $x_1, \dots,x_n$ bağımsız değişkenleri cinsinden $$y=b+ a_1x_1+a_2x_2+\cdots +a_nx_n$$ şeklinde ifade eden modellere lineer model denir. Tabii ki matematiksel modeller, greçek veriye tam olarak uymaz ve hep bir hata terimi vardır, bu hata termini de ($\epsilon$) modelin formülüne genellikle koyarız ve $$y=b+ a_1x_1+a_2x_2+\cdots +a_nx_n + \epsilon$$ şeklinde yazarız. Bir örneğini R'da bulunan car paketindeki prestige verisi ile yapalım.

library(car)
data("Prestige")
head(Prestige)

Bunlardan en sonuncusu head komutu, prestige veri setinin ilk satırlarını aşağıdaki gibi görüntüler.


                                education  income  women  prestige  census  type

gov.administrators     13.11       12351    11.16      68.8       1113      prof

general.managers     12.26      25879     4.02       69.1      1130       prof

accountant                12.77        9271     15.70      63.4      1171       prof

purchasing.officers    11.42        8865       9.11       56.8      1175      prof

chemists                    14.62        8403     11.68      73.5        2111     prof

physicists                   15.64      11030       5.13      77.6        2113    prof


Bu veri setinde income (gelir) değişkenini bağımlı değişken,  education (egitim), prestige (prestij) ve women (meslekteki kadin orani) değişkenlerini bagimsiz degiskenler olarak kullanarak lineer modelimizi kuracağız. Yani geliri egitim seviyesi, prestij ve meslekteki kadin orani bagimsiz degiskenleri ile tahmin eden bir model bulacağız. Bu modelin matematiksel ifadesi $$income=b+ a_1education+a_2prestige+a_3women+\epsilon$$ şeklinde olur ve R'da aşağıdaki kodla hesaplanır.

m <- lm(Prestige$income ~ Prestige$education + Prestige$prestige + Prestige$women)

Yukarıdaki kodda lm komutu lineer model kurmamızı sağlıyor, bu modeli m <- komutu ile bu modeli m adı ile çalışma alanımıza kaydediyoruz. lm komutu içerisindeki ilk argüman Prestige$income, "Prestige" veri setinin "income" değişkenini, yani bağımlı değişkenimizi gösteriyor. Bunu takip eden ~ işareti, matematiksel formüldeki "=" işaretinin görevini yapar. Bu işareti takip eden $+$ ile ayrılmış değerler de sırasıyla bağımsız değişkenlerimiz. Kurduğumuz modelin formülünü ve katsayılarını

m

yazarak aşağıdaki gibi görüntüleyebiliriz:

Call:

lm(formula = Prestige\$income ~ Prestige\$education + Prestige\$prestige + Prestige\$women)

Coefficients: (Intercept)    Prestige$education   Prestige$prestige   Prestige$women

                         -253.8               177.2                    141.4                        -50.9

Yukarıdaki çıktıda Intercept, matematiksel modelimizdeki $b$ değerini bağımsız değişkenlerin altındaki sayılarda bu değişkenlere karşılık gelen katsayıların değerlerini gösterir. Yani modelimiz
$$income= (-253.8)+ (177.2)education+(141.4)prestige+(-50.9)women+\epsilon$$ olarak hesaplanmıştır. Bu modelin istatistiki olarak manalı olup olmadığını kontrol etmek için

anova(m)

komutunu kullandığımızda aşağıdaki sonucu buluruz:

Analysis of Variance Table

Response: Prestige$income

                                Df        Sum Sq       Mean Sq      F value        Pr(>F)

Prestige$education 1       607421386    607421386    91.629     1.026e-15 ***

Prestige$prestige    1        329175528  329175528    49.656      2.573e-10 ***

Prestige$women     1        234562232    234562232  35.384      4.189e-08 ***

Residuals               98       649654265    6629125   --

Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Bu örnekte her bir bağımsız değişkenin $P$ değeri $0$ çıkıyor (*** kodundan anlaşılacağı üzere).




3, Kasım, 2017 Salih Durhan (1,271 puan) tarafından  cevaplandı
...