R ile Sıralı Logit Modelleri

Herkese merhaba, bu yazıda sıralı logit modelleri ve bu modellerin tahmincileri üzerine bir uygulama yapacağız. Öncelikle sıralı logit modelleri nedir bundan başlayalım. Bildiğimiz gibi nitel bağımlı değişken içeren ve bu değişken düzeylerinin 0 ve 1 olarak temsil edildiği modeller logit model olarak adlandırılır. Fakat bağımlı değişkenin 2 den fazla (1,2,…,J) düzeye sahip olması durumunda 2 model karşımıza çıkmakta. Bunlar multinomial logit ve ordered logit olarak adlandırılır. Bu iki model arasındaki ayrım ise bağımlı değişken düzeylerinin yapısına bağlı. Multinomial modelde bağımlı değişken düzeyleri birbirinden bağımsız olmalıdır. Yani bu düzeylerin birbirine üstünlüğü olmamalıdır. Sıralı logit (ordered) modelde ise bağımlı değişken düzeyleri arasında bir hiyerarşi bulunur. Düzeyler olumsuzdan olumluya sıralanabilir.(1: mutlu değil 2:Biraz mutlu 3:Çok mutlu). Düzeyleri ilkolul lise üniversite olan eğitim gibi bir değişken de sıralı bağımlı değişkene bir örnektir.

Uygulamada 1995 1997 yılları arası Norveç , Avustralya , İsveç , ABD için yapılan Dünya Değerler Araştırması verilerini kullanacağız.

Bağımlı değişken için bireylere hükümetin yoksullara yönelik uygulamalarını nasıl buldukları sorulmuş. Yanıtların düzeyi  ise çok az ,doğru miktarda, çok fazla şeklinde sıralanmıştır. Bağımsız değişken olarak ülkeler, yaş , üniversite derecesine sahip olup olmaması, bir dine mensup olup olmaması,cinsiyet olarak olarak belirlenmiş.

Kullanacağımız paketleri çağıralım ve başlayalım.

library(carData)
library(MASS)
library(googleVis)
library(VGAM)
library(dplyr)
library(erer)
library(brant)

Veri setinin içeriğine göz ve özet istatistiklerine göz atalım.

data(WVS)
summary(WVS)
str(WVS)

Çıktı;

Çıktıya göre yoksullara yönelik uygulamaların yeterliliğinin çok az olduğunu düşünen 2708, doğru miktarda olduğunu düşünen 1862, çok fazla olduğunu düşünen ise 811 kişi bulun maktadır. Veri setinin 2725’ini kadınlar oluşturmakta ve yine veri setinin 4238 kişi kadarlık bir kısmı üniversite derecesine sahip değil. Bağımlı değişkenin cevaplarını temsil eden poverty değişkenin ise sıralı ve kategorik yapıda olduğunu görmekteyiz.

Grafik yoluyla veri setinin yapısını incelemek kesin sonuçlar elde etmemizi sağlamaz fakat bazı önemli önsel bilgiler elde edebilir ve veri setinin ilgili değişkenlerindeki dağılımları gözlemleyebiliriz. Ankete katılan bireylerin eğitim durumlarına göre verdikleri cevapları gözlemlemek için grafiği aşağıdaki kod yardımıyla elde edebiliriz. Degree ve poverty değişkenlerini tablo haline getirip bu tabloyu grafik ile gösterelim.

bartable2 = table(WVS$degree, WVS$poverty) 
bartable2
barplot(bartable2, beside = TRUE,col=c("bisque4","coral3"),
        main = "Eğitime Göre Yardımların Niteliği Hakkındaki Düşünceler",
        cex.main=1,ylim = c(0,2500),
        legend = levels(unique(WVS$degree)))

Çıktı;

Grafiğe göre üniversite diplomasına sahip olmayanların her üç düzeyde de en fazla paya sahip olduğunu görmekteyiz. Üniversite derecesine sahip olanların ve olmayanların çoğunluğu yardımların çok az olduğu yanıtını vermiştir.

Bu grafiği ülke bazında elde etmek istersek;

bartable2 = table(WVS$country, WVS$poverty)
bartable2
barplot(bartable, beside = TRUE,col = c("gray24","gray48","gray71","gray88"),
        main = "Ülkelere Göre Yardımların Niteliği Hakkındaki Düşünceler",
        cex.main=1,ylim = c(0,1000),
        legend = levels(unique(WVS$country)))

Çıktı;

Grafiğe göre  diğer ülkelerin tersine yardım uygulamalarını çok fazla bulanların sayısı ABD ‘de bir hayli fazla görünmekte. Norveç ve İsviçre’de politikaları çok fazla gören kişi sayısı az iken ABD’de çok az olduğunu düşünenlerin sayısı ile çok fazla olduğunu düşünenlerin sayısı neredeyse eşit dağılmış.

Sıralı Logit Modeli

Bu modelde bağımlı değişken düzeyi 2 den fazla ve sıralı olması dolayısıyla kategori karşılaştırmaları 1. kategoriye karşı 2. ve 3. kategori , 1. ve 2. kategoriye karşı 3. kategori şeklinde yapılmaktadır. Bu karşılaştırmalar kategori sayısındaki artış ile artacaktır. Örneğin sıralı 4 kategoriden oluşan bir bağımlı değişken için 3 karşılaştırma yapılacaktır.  J kategori olması durumunda J-1 eşik değeri bulunmaktadır. 3 kategorili sıralı bağımlı değişken için kategorilerin karşılaştırılması aşağıdaki gibidir.

\begin{array}{l}{\operatorname{logit}[P(y \leq 1)]=\log \left[\frac{P(y=1)}{P(y=2)+P(y=3)}\right]=\tau_{1}-\beta x} \\ {\operatorname{logit}[P(y \leq 2)]=\log \left[\frac{P(y=1)+P(y=2)}{P(y=3)}\right]=\tau_{2}-\beta x}\end{array}

Burada dikkat etmemiz gereken X bağımsız değişkeninin bağımlı değişkene etkisi β’nın  tüm rejimlerde eşit olduğudur. Bu paralel eğriler varsayımı olarak biliniyor. Varsayımı test edip sağlanmaması durumunda Genelleştirilmiş Sıralı Logit regresyonunu kullanmamız gerekiyor.

Sıralı logit modeli tahmin edip sonuçlara bakalım;

model=polr(poverty ~ age + religion + country + degree + gender,
           data = WVS,method = "logistic")
summary(model)

Çıktı;

Prob değerleri elde etmek için aşağıdaki kodu kullanabiliriz;

katsayilar=coef(summary(model))
prob = pnorm(abs(katsayilar[, "t value"]), lower.tail = FALSE) * 2
katsayitablosu = cbind(katsayilar,"p degerleri"=prob)
katsayitablosu

Çıktı;

Sonuçlara göre tüm katsayıları istatistiksel olarak anlamlı bulduk. Bu modellerde katsayı yorumlaması yapılmamakta. Bu yüzden odds oranlarını elde etmemiz gerekiyor. Bunun için;

exp(coef(model))

Çıktı;

Yapılan yardımları çok fazla buluyorum şeklinde cevap veren birey bir ABD vatandaşı ise, düşüncesinin çok fazla düzeyinde kalma şansı Avustralya vatandaşı bir bireye göre 1.85 kat daha fazladır. Yani Amerikalı bir bireyin yoksullara yönelik uygulamaları(yardımları) daha üst bir yeterlilikte bulma şansı Avustralyalı bireylere göre 1.85 kat daha fazladır. Diğer katsayılar da benzer şekilde yorumlanabilir. Erkeklerin yoksullara yönelik yardımları daha üst bir yeterlilikte bulma şansı kadınlarınkinden 1.19 kat daha fazla diyebiliriz.

Marjinal Etkiler

marjinaletki=ocME(w=model,digits = 6)
marjinaletki$out

Çıktı;

Çıktıdaki prob değerlerin tümü 0.05 düzeyinde anlamlı görünüyor. Yoksulluk yardımlarının çok fazla olma olasılıkları için çıktının en alttaki sağ sütununa bakmalıyız. Norveç vatandaşlarının yoksullara yapılan yardımları çok fazla bulma olasılıkları Avustralya vatandaşlarının yapılan yardımları çok fazla bulma olasılıklarından (temel düzey) 0.03 birim daha azdır.

Doğru modeli kullandık mı? Değişkenlerin katsayıları rejimlere göre sabit mi ? Bunu test etmek için Brant testi yapabiliriz;

brant(model)

Çıktı;

Sonuçlara göre ülke değişkenlerinin katsayıları bağımlı değişkenin bir düzeyinden diğerine farklılık gösteriyor. Yani ülke değişkenleri paralel eğriler varsayımını bozmaktadır.(prob değerleri 0.000<0.01) Bu durumda model Genelleştirilmiş Sıralı Logitle tahmin edilmelidir.

Genelleştirilmiş Sıralı Logit Modeli

\begin{array}{l}{\operatorname{logit}[P(y \leq 1)]=\log \left[\frac{P(y=1)}{P(y=2)+P(y=3)}\right]=\tau_{1}-\beta_{1} x} \\ {\operatorname{logit}[P(y \leq 2)]=\log \left[\frac{P(y=1)+P(y=2)}{P(y=3)}\right]=\tau_{2}-\beta_{2} x}\end{array}

Yukarıdaki eşitlikte X bağımsız değişkeninin bağımlı değişkene etkisi β‘nın rejimlere göre değiştiğini görmekteyiz. Örneğin X bağımsız değişkeninin bağımlı değişkene etkisi β ilk rejimde β1 iken ikinci rejimde β2 olmaktadır.

Model aşağıdaki kod ile tahmin edilebilir. Kodda paralel eğriler varsayımının sağlanmadığını ve varsayımı sağlamayan değişkenin country değişkeni olduğunu  belirtiyoruz.

gmodel=vglm(poverty ~ age + religion + country + degree + gender,  yoksulluk, 
family=cumulative(parallel=F~country, reverse=T)) 
summary(gmodel)

Çıktı;

vglm fonksiyonu aynı zamanda odds oranlarını da vermekte. İlk model  too little | about right + too much şeklinde iken ikinci model  too little + about right | too much şeklindedir. İlk modelde temel düzey too little iken ikinci modelde temel düzey too little + about right halini almaktadır. 1 ve 2 olarak belirtilen değişkenler ilgili rejimlerde değişkenlerin aldığı katsayılar alttaki çıktıda ise odds oranlarıdır.

Uygulamaları yetersiz( too little) bulan bir  bireyin ABD vatandaşı olması,  uygulamaları daha üst bir yeterlilikte (about right + too much) bulma olasılığını Avustralya vatandaşlarına göre 1.43 kat arttırmaktadır. Uygulamaları yetersiz ya da doğru miktarda( too little + about right) bulan bir  bireyin ABD vatandaşı olması,  uygulamaları çok fazla (about right + too much) bulma olasılığını Avustralya vatandaşlarına göre 2.39 kat arttırmaktadır. Diğer değişkenlerin de katsayıları ve prob değerleri dikkate alınarak benzer şekilde yorumlanabilir.

Kategorik değişken sayısının fazla olması yorumlamada problemler yaşamamıza cümleyi evirip çevirmemize sebep olabiliyor. Genelleştirilmiş model için marjinal etkileri ocME fonksiyonu ile elde edemiyoruz ilgili fonksiyonun margeff düşünüp uyguladım ama pek sağlıklı sonuçlar elde edemedim. Fakat odds oranları da yorumlama yapmak için yeterli olacaktır. Sonuçları elde edebilirsem yazıyı güncelleyeceğim.

Son olarak yazının kapak resmindeki grafiğin farklı bir versiyonunu elde sonlandıralım. Bu yazıyı düzenlerken karşıma çıkan bir kodu verilere uyarladım,ilgilendiğiniz değerlerin üzerindeyken yüzdeleri gösteriyor. Ama bunu ekleyemediğim için göremiyoruz. Alttaki kod çalıştığında R tarayıcımızı grafiğin yer aldığı bir html sayfasına yönlendirecek.

doughnut <- gvisPieChart(poverty, 
                      options=list(
                        width=600,
                        height=600,
                        slices="{0: {offset: 0.05},
                          1: {offset: 0.05},
                          2: {offset: 0.05}}",
                        title='Yoksullara Yonelik Uygulamalarin Yeterliligi',
                        legend='none',
                        colors="['red','green', 'blue']",
                        pieSliceText='label',
                        pieHole=0.4),
                      chartid="doughnut")
plot(doughnut)

Birkaç değişiklik ve eklemelerle daha farklı grafikler de elde edebiliriz. Bu uygulama ile baştan sona sıralı nitel bir değişkenin tahmin aşamalarını incelemiş olduk. Umarım yararlı olur, eksik gördüğünüz kısım olursa belirtin lütfen.

Kaynakça

Yazar Hakkında
Toplam 2 yazı
Buğra POLAT
Buğra POLAT
Yorumlar (Yorum yapılmamış)

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

×

Bir Şeyler Ara