Apa rumus R-squared yang disesuaikan dalam lm dalam R dan bagaimana seharusnya ditafsirkan?


35

Apa rumus tepat yang digunakan dalam R lm() untuk Adjusted R-squared? Bagaimana saya bisa menafsirkannya?

Formula r-squared yang disesuaikan

Tampaknya ada beberapa rumus untuk menghitung R-kuadrat Disesuaikan.

  • Formula Wherry:1-(1-R2)(n-1)(n-v)
  • Formula McNemar:1-(1-R2)(n-1)(n-v-1)
  • Formula Tuhan:1-(1-R2)(n+v-1)(n-v-1)
  • Formula Stein:1-[(n-1)(n-k-1)(n-2)(n-k-2)(n+1)n](1-R2)

Deskripsi buku teks

  • Menurut buku teks Field, Discovering Statistics Using R (2012, hlm. 273) R menggunakan persamaan Wherry yang "memberi tahu kita berapa banyak varian dalam Y yang akan dipertanggungjawabkan jika model tersebut berasal dari populasi dari mana sampel diambil". Dia tidak memberikan formula untuk Wherry. Dia merekomendasikan menggunakan formula Stein (dengan tangan) untuk memeriksa seberapa baik model memvalidasi silang.
  • Kleiber / Zeileis, Applied Econometrics with R (2008, p. 59) mengklaim itu "Theil's adjusted R-squared" dan tidak mengatakan dengan tepat bagaimana interpretasinya bervariasi dari beberapa R-squared.
  • Dalgaard, Pengantar Statistik dengan R (2008, hal. 113) menulis bahwa "jika Anda mengalikan [disesuaikan R-kuadrat] dengan 100%, itu dapat diartikan sebagai '% pengurangan varians'". Dia tidak mengatakan formula mana yang sesuai.

Saya sebelumnya berpikir, dan membaca secara luas, bahwa R-squared menghukum karena menambahkan variabel tambahan ke model. Sekarang penggunaan formula yang berbeda ini tampaknya membutuhkan interpretasi yang berbeda. Saya juga melihat pertanyaan terkait pada Stack Overflow ( Apa perbedaan antara Multiple R-squared dan Adjusted R-squared dalam regresi kuadrat varian tunggal-variate? ), Dan kamus statistik Wharton school di UPenn .

Pertanyaan

  • Formula mana yang digunakan untuk r-square yang disesuaikan oleh R lm() ?
  • Bagaimana saya bisa menafsirkannya?

8
from summary.lm () ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf):, di mana ans $ r.squared = R ^ 2; n = n, rdf = residual df, df.int = intersep df (0 atau 1).
EDi

Saya akan memberikan jawaban untuk masalah sebenarnya di sini, yang bukan "seperti apa R ^ 2 ...". Informasi yang Anda (dan banyak lainnya) kekurangan adalah ini: semua paket R, bahkan intinya, membuat kode sumber tersedia. Bahkan hal-hal yang dikompilasi dalam distro tersedia di {packagenames} .tar.gz di CRAN atau repositori lainnya.
Carl Witthoft

OP di sini: Terima kasih atas masukan yang bagus ini. Bagaimana dengan pertanyaan kedua saya: Bagaimana saya bisa menafsirkannya? Saya membaca begitu banyak interpretasi yang berbeda tentang Ajj. R-kuadrat yang kadang-kadang tampaknya didasarkan pada formula yang mungkin bukan milik Wherry?

Jawaban:


29

1. Formula apa yang digunakan lmdalam R untuk penyesuaian r-square?

Seperti yang telah disebutkan, mengetik summary.lmakan memberi Anda kode yang R gunakan untuk menghitung R square yang disesuaikan. Mengekstrak baris paling relevan yang Anda dapatkan:

ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf)

yang sesuai dengan notasi matematika untuk:

RSebuahdj2=1-(1-R2)n-1n-hal-1

df.int=1nhalrdfn-p-1

n-haln-hal-1

2. Mengapa ada begitu banyak formula r-square yang disesuaikan?

RSebuahdj2ρ2ρ2

R2RSebuahdj2 semakin kecil sebagai ukuran meningkat sampel. Perbedaan mendekati nol karena ukuran sampel cenderung tak terbatas. Perbedaannya juga semakin kecil dengan sedikit prediktor.

RSebuahdj2 ?

RSebuahdj2ρ2ρ2R2

Referensi

  • R2

9

Mengenai pertanyaan pertama Anda: Jika Anda tidak tahu bagaimana cara menghitungnya lihat kode! Jika Anda mengetik summary.lmdi konsol, Anda mendapatkan kode untuk fungsi ini. Jika Anda skim pikir kode Anda akan menemukan baris: ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf). Jika Anda melihat beberapa baris di atas dari baris ini, Anda akan melihat bahwa:

  • ans$r.squaredR2
  • n adalah jumlah residu = jumlah pengamatan
  • df.int adalah 0 atau 1 (tergantung jika Anda memiliki intersep)
  • rdf adalah sisa df Anda

R2R2

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.