Bagaimana cara membuat koreksi peristiwa langka yang dijelaskan dalam King and Zeng (2001)?

8

Saya memiliki dataset dengan variabel respons biner (bertahan hidup) dan 3 variabel penjelas ( A= 3 level, B= 3 level, C= 6 level). Dalam dataset ini, data seimbang dengan 100 individu per ABCkategori. Saya sudah mempelajari efek dari A, Bdan Cvariabel dengan dataset ini; efeknya signifikan.

Saya memiliki subset. Dalam setiap ABCkategori, 25 dari 100 individu, di mana sekitar setengahnya masih hidup dan setengahnya mati (ketika kurang dari 12 masih hidup atau mati, jumlahnya diselesaikan dengan kategori lain), selanjutnya diselidiki untuk variabel ke-4 ( D). Saya melihat tiga masalah di sini:

  1. Saya perlu mempertimbangkan data koreksi peristiwa langka yang dijelaskan dalam King dan Zeng (2001) untuk memperhitungkan perkiraan 50% - 50% tidak sama dengan proporsi 0/1 dalam sampel yang lebih besar.
  2. Pengambilan sampel non-acak 0 dan 1 ini mengarah pada kemungkinan berbeda bagi individu untuk disampel di masing-masing ABCkategori, jadi saya pikir saya harus menggunakan proporsi sebenarnya dari setiap kategori daripada proporsi global 0/1 dalam sampel besar .
  3. Variabel 4 ini memiliki 4 level, dan data benar-benar tidak seimbang dalam 4 level ini (90% dari data berada dalam 1 level ini, katakanlah level D2).

Saya telah membaca makalah King dan Zeng (2001) dengan hati-hati, juga pertanyaan CV ini yang membawa saya ke kertas King dan Zeng (2001), dan kemudian yang lain ini yang mendorong saya untuk mencoba logistfpaket (saya menggunakan R). Saya mencoba menerapkan apa yang saya pahami dari King dan Zheng (2001), tetapi saya tidak yakin apa yang saya lakukan itu benar. Saya mengerti ada dua metode:

  • Untuk metode koreksi sebelumnya, saya mengerti Anda hanya memperbaiki intersep. Dalam kasus saya, intersep adalah A1B1C1kategori, dan dalam kategori ini, survival adalah 100%, jadi survival dalam dataset besar dan subsetnya sama, dan oleh karena itu koreksi tidak mengubah apa pun. Saya curiga metode ini seharusnya tidak berlaku bagi saya, karena saya tidak memiliki proporsi sebenarnya secara keseluruhan, tetapi proporsi untuk setiap kategori, dan metode ini mengabaikan hal itu.
  • Untuk metode pembobotan: Saya menghitung w i , dan dari apa yang saya pahami dalam makalah: "Semua peneliti perlu lakukan adalah menghitung w i dalam Persamaan. (8), pilih sebagai bobot dalam program komputer mereka, dan kemudian jalankan model logit ". Jadi saya pertama berlari glmsebagai:

    glm(R~ A+B+C+D, weights=wi, data=subdata, family=binomial)
    

    Saya tidak yakin saya harus memasukkan A,, Bdan Csebagai variabel penjelas, karena saya biasanya berharap mereka tidak memiliki efek pada kelangsungan hidup dalam subsampel ini (setiap kategori berisi sekitar 50% mati dan hidup). Bagaimanapun, itu tidak boleh banyak mengubah output jika mereka tidak signifikan. Dengan koreksi ini, saya mendapatkan tingkat yang cocok untuk level D2(level dengan sebagian besar individu), tetapi tidak sama sekali untuk level orang lain D( D2lebih tinggi). Lihat grafik kanan atas:

Cocok Cocok untuk model non-tertimbang glmdan glmmodel yang ditimbang dengan w i . Setiap titik mewakili satu kategori. Proportion in the big datasetadalah proporsi sebenarnya dari 1 dalam ABCkategori di dataset besar, Proportion in the sub datasetadalah proporsi sebenarnya dari 1 dalam ABCkategori di subdataset, dan Model predictionsmerupakan prediksi glmmodel yang cocok dengan subdataset. Setiap pchsimbol mewakili tingkat tertentu D. Segitiga adalah level D2.

Baru kemudian ketika melihat ada logistf, saya pikir ini mungkin tidak sesederhana itu. Saya tidak yakin sekarang. Ketika melakukan logistf(R~ A+B+C+D, weights=wi, data=subdata, family=binomial), saya mendapatkan perkiraan, tetapi fungsi prediksi tidak berfungsi, dan tes model default mengembalikan nilai kuadrat chi tak terbatas (kecuali satu) dan semua nilai p = 0 (kecuali 1).

Pertanyaan:

  • Apakah saya benar memahami King dan Zeng (2001)? (Seberapa jauh saya dari memahaminya?)
  • Dalam saya glmcocok, A, B, dan Cmemiliki efek yang signifikan. Semua ini berarti bahwa saya mendistribusi banyak dari setengah / setengah proporsi 0 dan 1 di subset saya dan berbeda dalam ABCkategori yang berbeda - bukankah itu benar?
  • Dapatkah saya menerapkan koreksi bobot King and Zeng (2001) meskipun faktanya saya memiliki nilai tau dan nilai untuk setiap kategori alih-alih nilai global?y¯ABC
  • Apakah ini masalah bahwa Dvariabel saya sangat tidak seimbang, dan jika ya, bagaimana saya bisa mengatasinya? (Memperhatikan saya harus mempertimbangkan untuk koreksi peristiwa langka ... Apakah "pembobotan ganda", yaitu menimbang bobot, mungkin?) Terima kasih!

Sunting : Lihat apa yang terjadi jika saya menghapus A, B dan C dari model. Saya tidak mengerti mengapa ada perbedaan seperti itu.

Cocok2 Cocok tanpa A, B, dan C sebagai variabel penjelas dalam model

Aurelie
sumber

Jawaban:

2

The logistf() Fungsi tidak menerapkan regresi acara logistik langka, yang dilakukan oleh relogit() fungsi dalam paket Zelig, di CRAN. Anda harus menguji yang itu!

kjetil b halvorsen
sumber
Oke, saya telah melihat, dan saya tidak dapat menggunakan relogit (), karena seperti yang saya katakan, saya memiliki nilai tau untuk setiap kategori ABC, bukan nilai global, dan fungsi ini tidak memungkinkan saya untuk memasukkan vektor dari panjang yang sama dengan dataset saya sebagai tau. Dari apa yang saya mengerti tentang bagaimana fungsi ini ditulis, saya pikir apa yang dilakukan adalah benar (kecuali saya tidak membuat bagian koreksi bias yang lebih maju ...).
Aurelie
2

Saya menyadari bahwa perbandingan proporsi pas dan aktual saya pada grafik pertama, sudut kanan atas, bukan cara terbaik untuk menilai kecocokan model, karena dalam data besar saya dapat menghitung proporsi untuk kategori ABC, tetapi dengan model yang cocok di mana keempat variabel dimasukkan, proporsi diprediksi untuk setiap kategori ABCD.

Saya memasang model baru pada subdata, tempat saya menghapus D:

glm(R~A+B+C, family=binomial, data=subdata)

Sehingga saya bisa membandingkan prediksi model ini yang dilengkapi dengan subdataset, dan proporsi sebenarnya dalam dataset besar, dan menilai apakah bobot saya melakukan apa yang saya harapkan.

Hasilnya adalah:

cocok3 Prediksi model baru terhadap proporsi dalam dataset besar.

Sekarang saya pikir jawabannya adalah: ya, pasti.

Oleh karena itu, ini menjawab pertanyaan saya 1 (saya benar memahami King dan Zheng (2001), setidaknya metode pembobotan) dan 3 (saya bisa menerapkan koreksi bobot King dan Zheng (2001) meskipun faktanya saya memiliki nilai dari τ dan nilai y¯ untuk setiap kategori ABC, bukan nilai global).

Dua pertanyaan lainnya adalah:

  • Mengapa begitu penting untuk memasukkan A, B, dan C dalam model untuk mendapatkan kecocokan yang baik dan mengapa pengaruhnya signifikan. Apakah ini karena saya menyarankan fakta bahwa saya memiliki banyak dari setengah / setengah proporsi 0 dan 1 di subset saya dan berbeda dalam kategori ABC yang berbeda?

    -> Saya pikir harapan saya bahwa memasukkan A + B + C dalam model seharusnya tidak berpengaruh karena semua kategori ABC harus mengandung sekitar setengah dari 0 dan 1 pengamatan akan benar dengan model linear non-weighted (sebenarnya, ketika Anda membandingkan dua grafik sudut kiri atas, tidak ada banyak perbedaan di antara mereka ... tapi tetap saja, B dan C memiliki efek yang signifikan dalam model linier non-tertimbang ini. Saya akan mempertimbangkan ini karena keberangkatan dari 50 / 50), tetapi tidak harus dengan model linier tertimbang.

  • Apakah ini masalah bahwa variabel D saya sangat tidak seimbang, dan jika ya, bagaimana saya bisa mengatasinya? (Apakah "penimbangan ganda", yaitu menimbang bobot, mungkin?).

    -> Saya berpikir tentang menggunakan fungsi Anova dari 'car'perpustakaan untuk regresi logistik (menentukan 'test.statistic="LR"'). Dalam hal ini, fungsi tersebut memberatkan sel secara langsung untuk membuat tipe II SS, jadi saya dapat menyimpan 'weight'opsi untuk koreksi peristiwa langka.

Aurelie
sumber
Saya baru saja melihat pertanyaan CV ini yang menyarankan menggunakan fungsi Anova dari perpustakaan mobil dengan tes LR tidak diadaptasi. Saya akan dengan cermat membaca tautan CV ini untuk menemukan jawaban.
Aurelie
Saya menyelidiki lebih dalam fungsi 'logistf', karena tampaknya itu berisi metode pengujian model bobot istilah signifikansi. Koefisien yang saya dapatkan dengan fungsi 'logistf' sangat dekat dari koefisien yang saya dapatkan dengan 'glm' (ketika kembali bertransformasi menjadi rasio ganjil dan memplot, saya mendapatkan kapak = garis y).
Aurelie
Jadi, meskipun tidak ada metode untuk mendapatkan prediksi dan nilai pas 'logistf', plot nilai pas 'logistf' akan terlihat seperti banyak plot terakhir yang saya berikan (kecocokan baik).
Aurelie