Sürekli değişken ve ikili hedef değişken (0 ve 1) ile bir veri kümesi var.
Sürekli değişkenleri (lojistik regresyon için) hedef değişkene göre ayırmak ve her aralıktaki gözlem sıklığının dengelenmesi gerekir. Chi Merge, karar ağaçları gibi makine öğrenme algoritmalarını denedim. Chi merge bana her aralıkta çok dengesiz sayılarla aralıklar verdi (3 gözlemli bir aralık ve 1000 ile başka bir aralık). Karar ağaçlarını yorumlamak zordu.
İdeal bir ayrıklaştırmanın , ayrıklaştırılmış değişken ile hedef değişken arasındaki istatistiği maksimuma çıkarması ve kabaca aynı miktarda gözlem içeren aralıklar olması gerektiği sonucuna vardım .
Bunu çözmek için bir algoritma var mı?
R'de bu şekilde görünebilir (def, hedef değişken ve x değişkenin ayrıklaştırılmasıdır). Dönüştürülen ve hedef değişken arasındaki "korelasyonu" değerlendirmek için Tschuprow'un değerini hesapladım çünkü istatistikleri aralıkların sayısı ile artma eğilimindedir. Bunun doğru yol olup olmadığından emin değilim.
Benim diskretizasyon Tschuprow en dışındaki optimum ise değerlendirirken başka yolu var mı (artar sınıf sayısı azalır)?
chitest <- function(x){
interv <- cut(x, c(0, 1.6,1.9, 2.3, 2.9, max(x)), include.lowest = TRUE)
X2 <- chisq.test(df.train$def,as.numeric(interv))$statistic
#Tschuprow
Tschup <- sqrt((X2)/(nrow(df.train)*sqrt((6-1)*(2-1))))
print(list(Chi2=X2,freq=table(interv),def=sum.def,Tschuprow=Tschup))
}