Drzewa klasyfikacyjne Dla danych dane.csv (z modeli liniowych i mieszanych) skonstruować drzewo klasyfikacyjne, gdzie liśćmi będzie miejsce hospitalizacji, natomiast korzeniami płeć, wiek oraz poziom hemoglobiny. drzewo=rpart(szpital~Wiek+Płeć+Anemia,data=dane,cp=0.005, minsplit=10) plot(drzewo,branch=0.7) text(drzewo,use.n=T) Następnie wykonać następujące polecenia. 1) Wybrać optymalną wartość współczynnika złożoności, przy pomocy funkcji plotcp(drzewo) i wyznaczyć ponownie drzewo z uzyskaną wartością współczynnika złożoności. 2) Wybrać drzewo optymalne przy pomocy metody kros-walidacji for (i in 1:n) { drzewo.i=rpart(szpital~Płeć+Wiek+Hemoglobina,data=dane[-c(i),],cp=0.005,minsplit=10) pred=predict(drzewo.i,newdata=dane[c(i),],type="class") if (pred==dane$szpital[i]) popr.klas[i]=1 } popr.klas 3) Następnie oszacować ułamek poprawnych klasyfikacji oraz błąd klasyfikacji na podstawie kros-walidacji upk=sum(popr.klas)/n bl.cv=1-upk 4) Porównać wartości z zadania nr 3 dla drzewa ze współczynnikiem złożoności=0.005. Które drzewo jest lepsze? 5) Do której z klas należałby mężczyzna w wieku 74 lat z poziomem hemoglobiny 13.29? new.dane=as.data.frame(matrix(c(1,74,13.29),1,3)) names(new.dane)=c("Płeć","Wiek","Hemoglobina") predict(drzewo,new.dane,type="class") 6) Maksymalnie w trzy-osobowych grupach roboczych opisać i zinterpretować uzyskane wyniki.
... zobacz całą notatkę
Komentarze użytkowników (0)