Formula untuk interval kepercayaan 95% untuk

13

Saya mencari di Google dan mencari di stats.stackexchange tetapi saya tidak dapat menemukan rumus untuk menghitung interval kepercayaan 95% untuk nilai untuk regresi linier. Adakah yang bisa menyediakannya?R2

Bahkan lebih baik, katakanlah saya telah menjalankan regresi linier di bawah ini dalam R. Bagaimana saya menghitung interval kepercayaan 95% untuk nilai menggunakan kode R.R2

lm_mtcars <- lm(mpg ~ wt, mtcars)
luciano
sumber
1
Nah Anda tahu hubungan antara korelasi dan adalah bahwa Anda mengkuadratkan koefisien korelasi untuk mendapatkan jadi mengapa tidak menghitung interval kepercayaan untuk dan kemudian kuadratkan batas bawah dan atas interval? R 2 R 2 rrR2R2r
1
@ NOL: itu akan bekerja dalam regresi linier sederhana, yaitu, dengan satu prediktor dan intersep. Ini tidak akan bekerja untuk regresi linier berganda dengan lebih dari satu prediktor.
Stephan Kolassa
@StephanKolassa, sangat benar! Saya kira saya mendasarkannya dari Rkode- nya di mana hanya ada satu regresi tetapi itu adalah hal yang sangat baik untuk diklarifikasi.
Anda dapat misalnya menggunakan fungsi R yang sangat kecil github.com/mayer79/R-confidence-intervals-R-squared didasarkan pada properti dari distribusi-F non-sentral.
Michael M

Jawaban:

16

Anda selalu dapat bootstrap:

> library(boot)
> foo <- boot(mtcars,function(data,indices)
        summary(lm(mpg~wt,data[indices,]))$r.squared,R=10000)

> foo$t0
[1] 0.7528328

> quantile(foo$t,c(0.025,0.975))
     2.5%     97.5% 
0.6303133 0.8584067

Carpenter & Bithell (2000, Statistics in Medicine) memberikan pengantar yang mudah dibaca untuk interval kepercayaan bootstrap, meskipun tidak secara khusus berfokus pada .R2

Stephan Kolassa
sumber
1
(+1) Mungkin menarik bahwa rumus perkiraan dikutip oleh @ Durden, dengan dan memberikan interval . Itu akan hampir sepenuhnya benar jika kita menjatuhkan faktor mengalikan SE dalam rumus itu! k = 1 ( 0,546 , 0,960 ) 2n=32k=1(0.546,0.960)2
Whuber
Mungkin juga patut dicatat bahwa Anda bisa mendapatkan jenis interval kepercayaan lain (mis. BCa) dari distribusi bootstrap resampling menggunakan boot.ci().
Jeffrey Girard
7

Di R, Anda dapat menggunakan CI.Rsq()fungsi yang disediakan oleh paket psikometrik . Mengenai formula yang berlaku, lihat Cohen et al. (2003) , Analisis Regresi Berganda / Korelasi Terapan untuk Ilmu Perilaku , hal. 88:

SER2=4R2(1R2)2(nk1)2(n21)(n+3)

Kemudian, 95% CI adalah .R2±2SER2

Durden
sumber
3
(1) dikuadratkan dalam referensi Anda. (2) Penting untuk dicatat bahwa " " dimaksudkan untuk menjadi nilai sampel daripada nilai populasi (yang jelas adalah apa yang " " rujuk dalam pertanyaan, dari mana potensi kebingungan). (3) Penting juga bahwa ini hanya hasil asimptotik ("sampel besar"), memberikan "perkiraan yang memadai" untuk " ". (Saya percaya menghitung intersep ditambah jumlah variabel independen.) Akan berguna untuk melihat contoh yang berhasil didukung oleh simulasi, karena interval ini terlihat terlalu lebar. R 2 R 2 n - k - 1 > 60 k + 1(1R2)R2R2nk1>60k+1
Whuber
Menurut Wishart (1931) formula ini tidak cocok untuk distribusi tidak normal.
abukaj