public static GAIN EnBüyük(List <GAIN> gainList) { GAIN g = gainList[0]; foreach (var item in gainList) { if (g.değer < item.değer) { g = item; } } return(g); }
public static void AğacıDoldur(Ağaç ağaç, string[] dizi, string cevapSütun) { string[] sonuçlar = new string[dizi.Length - 1]; int konum = Array.IndexOf(dizi[0].Split(sep), cevapSütun); for (int i = 0; i < dizi.Length - 1; i++) { sonuçlar[i] = dizi[i + 1].Split(sep)[konum]; } double EntropiG = Entropi(sonuçlar); if (EntropiG == 0) { ağaç.sınıf = dizi[1].Split(sep)[konum]; } else { List <GAIN> GainList = Gain(dizi, cevapSütun); GAIN Enbüyük = GAIN.EnBüyük(GainList); ağaç.isim = Enbüyük.isim; if (Enbüyük.histo.Count == 1) { ağaç.sınıf = dizi[1].Split(sep)[konum]; return; } foreach (var dal in Enbüyük.histo) { Ağaç AltAğaç = new Ağaç(); AltAğaç.değer = dal.isim; string[] AltDizi = altDizi(dizi, dal, Enbüyük.isim); ağaç.AltListe.Add(AltAğaç); AğacıDoldur(AltAğaç, AltDizi, cevapSütun); } } }