Untuk apa nilainya:
keduanya rpart
dan ctree
secara rekursif melakukan pemisahan univariat dari variabel dependen berdasarkan nilai-nilai pada seperangkat kovariat. rpart
dan algoritma terkait biasanya menggunakan langkah-langkah informasi (seperti koefisien Gini ) untuk memilih kovariat saat ini.
ctree
, menurut penulisnya (lihat komentar chl ) menghindari bias pemilihan variabel berikut rpart
(dan metode terkait): Mereka cenderung memilih variabel yang memiliki banyak kemungkinan pemisahan atau banyak nilai yang hilang. Tidak seperti yang lain, ctree
menggunakan prosedur uji signifikansi untuk memilih variabel daripada memilih variabel yang memaksimalkan ukuran informasi (misalnya koefisien Gini).
Tes signifikansi, atau lebih baik: tes signifikansi berganda yang dihitung pada setiap permulaan algoritma (pilih kovariat - pilih split - perulangan) adalah tes permutasi , yaitu, "distribusi statistik uji di bawah hipotesis nol diperoleh dengan menghitung semua nilai yang mungkin dari statistik uji di bawah penataan ulang label pada titik data yang diamati. " (dari artikel wikipedia).
Sekarang untuk statistik uji: ini dihitung dari transformasi (termasuk identitas, yaitu, tidak ada transformasi) dari variabel dependen dan kovariat. Anda dapat memilih salah satu dari sejumlah transformasi untuk kedua variabel. Untuk DV (Dependent Variable), transformasi disebut fungsi pengaruh yang Anda tanyakan.
Contoh (diambil dari kertas ):
- jika DV dan kovariat keduanya numerik, Anda dapat memilih transformasi identitas dan menghitung korelasi antara kovariat dan semua permutasi yang mungkin dari nilai-nilai DV. Kemudian, Anda menghitung nilai- p dari tes permutasi ini dan membandingkannya dengan nilai- p untuk kovariat lainnya.
- jika DV dan kovariatnya nominal (tidak berurutan kategorikal), statistik uji dihitung dari tabel kontingensi.
- Anda dapat dengan mudah membuat statistik uji jenis lain dari segala jenis transformasi (termasuk transformasi identitas) dari skema umum ini.
contoh kecil untuk tes permutasi di R
:
require(gtools)
dv <- c(1,3,4,5,5); covariate <- c(2,2,5,4,5)
# all possible permutations of dv, length(120):
perms <- permutations(5,5,dv,set=FALSE)
# now calculate correlations for all perms with covariate:
cors <- apply(perms, 1, function(perms_row) cor(perms_row,covariate))
cors <- cors[order(cors)]
# now p-value: compare cor(dv,covariate) with the
# sorted vector of all permutation correlations
length(cors[cors>=cor(dv,covariate)])/length(cors)
# result: [1] 0.1, i.e. a p-value of .1
# note that this is a one-sided test
Sekarang anggaplah Anda memiliki seperangkat kovariat, tidak hanya satu seperti di atas. Kemudian hitung nilai- p untuk masing-masing kovariat seperti dalam skema di atas, dan pilih nilai p -nilai terkecil . Anda ingin menghitung nilai- p daripada korelasi secara langsung, karena Anda bisa memiliki kovariat dari jenis yang berbeda (misalnya numerik dan kategorikal).
Setelah Anda memilih kovariat, sekarang jelajahi semua pemisahan yang mungkin (atau sering kali jumlah yang mungkin dari semua pemisahan yang mungkin, misalnya dengan membutuhkan sejumlah kecil elemen DV sebelum pemisahan) kembali mengevaluasi tes berbasis permutasi.
ctree
hadir dengan sejumlah transformasi yang memungkinkan untuk DV dan kovariat (lihat bantuan Transformations
dalam party
paket).
jadi umumnya perbedaan utama tampaknya adalah yang ctree
menggunakan skema seleksi kovariat yang didasarkan pada teori statistik (yaitu seleksi dengan uji signifikansi berbasis permutasi) dan dengan demikian menghindari bias potensial rpart
, jika tidak mereka tampaknya serupa; misalnya pohon inferensi bersyarat dapat digunakan sebagai pelajar dasar untuk Hutan Acak.
Ini sejauh yang saya bisa dapatkan. Untuk informasi lebih lanjut, Anda benar-benar perlu membaca koran. Perhatikan bahwa saya sangat menyarankan Anda benar-benar tahu apa yang Anda lakukan ketika Anda ingin menerapkan segala jenis analisis statistik.