Как устранить ошибку вgnett.rpart (fitTree, data = hypo_mode, type = "class"): неверный прогноз для объекта "rpart"? - PullRequest
0 голосов
/ 18 мая 2018

Я работаю над набором данных, который имеет около 2500 наблюдений и 46 переменных.Я смог выяснить, почему именно происходит ошибка, но просто не смог ее устранить.

Вот код, выдающий ошибку:

test$rating<-as.factor(test$rating)
fitTree<-rpart(rating~.,data=train)
predict(fitTree,data=mode,type="class")
> predict(fitTree,data=mode,type="class")
Error in predict.rpart(fitTree, data = mode, type = "class") : 
  Invalid prediction for "rpart" object

Набор данных режима в data = mode внутри функции предсказания имеет 45 переменных и был создан с использованием этого кода:

 mode<-data.frame(functionary=0,re.balanced..paid.back..a.recently.overdrawn.current.acount=1,FI3O.credit.score=1,...till 45 variables)

Набор данных режима не имеет столбца кредита ипоэтому мы предсказываем это, обучаясь с помощью набора данных train.

Работает, если я удаляю part type = "class" из кода, но проблема в том, что он не дает правильного вывода.Вывод, который он мне выдает, выглядит примерно так:

> predict(fitTree,data=hypo_mode)
> 1         2         3         4         5         6         7        
> 8         9        10        11 
> 0.0000000 0.0000000 0.4285714 0.4285714 1.6592179 1.6592179 1.9379562 1.9379562 1.5789474 2.0739437 1.9379562 
>        12        13        14        15        16        17        18        19        20        21        22 
> 2.0739437 1.5789474 1.6592179 2.0739437 0.0000000 1.6592179 0.0000000 1.5789474 1.9379562 1.9379562 2.0739437 
>        23        24        25        26        27        28        29        30        31        32        33 
> 2.7741935 0.0000000 1.6592179 1.9379562 0.0000000 1.9379562 1.9379562 1.9379562 1.9379562 0.0000000 1.6592179 
>        34        35        36        37        38        39        40        41        42        43        44 
> 0.1929825 1.5789474 0.0000000 0.1929825 2.0739437 1.1666667 2.0739437 2.0739437 1.5789474 1.5789474 0.0000000 
>        45        46        47        48        49        50        51        52        53        54        55 
> 1.6592179 1.9379562 0.0000000 1.5789474 1.9379562 1.9379562 1.9379562 1.6592179 1.6592179 1.5789474 1.5789474 
>        56        57        58        59        60        61        62        63        64        65        66 
> 2.0739437 1.6592179 2.0739437 1.5789474 0.4285714 0.0000000 1.5789474 1.6592179 1.5789474 1.6592179 1.9379562 
>        67        68        69        70        71        72        73        74        75        76        77 
> 2.0739437 0.0000000 1.9379562 2.0739437 1.5789474 2.0739437 0.0000000 1.6592179 2.0739437 2.0739437 1.9379562 
>        78        79        80        81        82        83        84        85        86        87        88 
> 1.6592179 0.1929825 1.6592179 1.5789474 1.9379562 1.9379562 0.0000000 2.0739437 2.7741935 2.7741935 2.0739437 
>        89        90        91        92        93        94        95        96        97        98        99 
> 1.5789474 0.1929825 1.5789474 0.0000000 1.9379562 0.1929825 0.0000000 1.6592179 1.9379562 1.9379562 1.5789474 
>       100       101       102       103       104       105       106       107       108       109       110 
> 2.0739437 1.5789474 1.5789474 1.9379562 2.7741935 0.0000000 1.5789474 2.0739437 2.0739437 0.0000000 2.0739437 
>       111       112       113       114       115       116       117       118       119       120       121 
> 1.6592179 1.9379562 2.0739437 1.6592179 1.5789474 1.6592179 2.0739437 2.0739437 1.5789474 1.9379562 2.0739437 
>       122       123       124       125       126       127       128       129       130       131       132 
> 1.6592179 2.7741935 1.5789474 1.9379562 1.6592179 0.1929825 1.9379562 2.0739437 1.5789474 1.9379562 2.0739437 
>       133       134       135       136       137       138       139       140       141       142       143 
> 1.5789474 1.9379562 2.7741935 0.0000000 1.9379562 2.0739437 2.0739437 2.2777778 1.9379562 1.6592179 2.0739437 
>       144       145       146       147       148       149       150       151       152       153       154 
> 2.0739437 1.9379562 1.6592179 1.9379562 1.6592179 2.7741935 2.0739437 0.0000000 2.0739437 0.0000000 0.0000000 
>       155       156       157       158       159       160       161       162       163       164       165 
> 1.5789474 2.7741935 1.9379562 1.6592179 1.1666667 1.5789474 1.5789474 0.0000000 2.0739437 1.6592179 1.6592179 
>       166       167       168       169       170       171       172       173       174       175       176 
> 0.0000000 1.5789474 2.0739437 1.6592179 0.0000000 1.5789474 1.6592179 0.0000000 2.2777778 1.6592179 1.9379562 
>       177       178       179       180       181       182       183       184       185       186       187 
> 1.9379562 1.9379562 2.2777778 0.1929825 1.1666667 1.9379562 2.0739437 0.0000000 0.0000000 1.9379562 1.6592179 
>       188       189       190       191       192       193       194       195       196       197       198 
> 2.0739437 1.6592179 2.0739437 1.9379562 1.9379562 1.9379562 2.0739437 1.9379562 1.1666667 0.0000000 2.0739437 
>       199       200       201       202       203       204       205       206       207       208       209 
> 1.6592179 1.9379562 1.9379562 2.0739437 2.0739437 1.5789474 2.0739437 1.1666667 1.9379562 1.9379562 0.0000000 
>       210       211       212       213       214       215       216       217       218       219       220 
> 1.9379562 0.0000000 2.0739437 1.9379562 1.9379562 1.5789474 1.5789474 1.9379562 0.0000000 1.9379562 0.0000000 
>       221       222       223       224       225       226       227       228       229       230       231 
> 0.0000000 1.5789474 2.0739437 1.9379562 2.0739437 1.6592179 0.1929825 1.5789474 2.0739437 1.5789474 1.9379562 
>       232       233       234       235       236       237       238       239       240       241       242 
> 2.0739437 1.6592179 1.5789474 1.9379562 1.9379562 1.6592179 2.0739437 1.9379562 1.9379562 1.9379562 1.5789474 
>       243       244       245       246       247       248       249       250       251       252       253 
> 1.9379562 2.0739437 2.0739437 2.0739437 1.6592179 2.0739437 0.0000000 1.5789474 0.0000000 1.6592179 1.9379562 
>       254       255       256       257       258       259       260       261       262       263       264 
> 2.7741935 0.0000000 2.0739437 1.5789474 1.9379562 1.9379562 0.0000000 2.0739437 1.6592179 1.9379562 0.0000000 
>       265       266       267       268       269       270       271       272       273       274       275 
> 2.2777778 1.5789474 1.9379562 2.0739437 2.0739437 1.5789474 1.1666667 1.6592179 1.5789474 1.5789474 1.5789474 
>       276       277       278       279       280       281       282       283       284       285       286 
> 2.0739437 1.5789474 2.0739437 2.0739437 1.5789474 1.5789474 1.6592179 1.9379562 1.9379562 1.9379562 0.0000000 
>       287       288       289       290       291       292       293       294       295       296       297 
> 1.6592179 1.9379562 2.0739437 2.0739437 2.0739437 1.5789474 2.0739437 0.1929825 1.5789474 1.1666667 1.5789474 
>       298       299       300       301       302       303       304       305       306       307       308 
> 1.5789474 1.6592179 1.6592179 0.4285714 1.9379562 1.5789474 0.0000000 1.9379562 1.5789474 1.9379562 0.0000000 
>       309       310       311       312       313       314       315       316       317       318       319 
> 1.9379562 1.1666667 0.0000000 1.6592179 1.5789474 1.5789474 1.5789474 1.6592179 2.0739437 2.0739437 1.9379562 
>       320       321       322       323       324       325       326       327       328       329       330 
> 2.0739437 0.0000000 2.0739437 0.0000000 1.6592179 1.6592179 1.9379562 2.0739437 1.9379562 1.5789474 1.5789474 
>       331       332       333       334       335       336       337       338       339       340       341 
> 1.5789474 0.1929825 0.0000000 1.1666667 2.0739437 2.0739437 0.0000000 1.6592179 1.9379562 1.5789474 0.1929825 
>       342       343       344       345       346       347       348       349       350       351       352 
> 1.6592179 1.6592179 2.0739437 0.0000000 2.7741935 1.9379562 0.0000000 1.6592179 1.9379562 1.9379562 0.0000000 
>       353       354       355       356       357       358       359       360       361       362       363 
> 1.6592179 1.9379562 0.0000000 0.1929825 0.0000000 0.0000000 2.0739437 0.1929825 2.0739437 1.6592179 1.5789474 
>       364       365       366       367       368       369       370       371       372       373       374 
> 1.6592179 1.1666667 0.1929825 1.9379562 2.0739437 2.0739437 1.9379562 2.0739437 1.9379562 1.6592179 2.7741935 
>       375       376       377       378       379       380       381       382       383       384       385 
> 2.0739437 1.9379562 2.0739437 0.0000000 1.5789474 2.2777778 2.7741935 0.1929825 1.6592179 2.7741935 0.0000000 
>       386       387       388       389       390       391       392       393       394       395       396 
> 2.0739437 1.6592179 1.5789474 1.9379562 2.0739437 1.9379562 2.0739437 2.0739437 1.1666667 1.6592179 1.6592179 
>       397       398       399       400       401       402       403       404       405       406       407 
> 1.9379562 1.5789474 1.5789474 1.5789474 1.9379562 1.6592179 2.0739437 2.0739437 0.0000000 2.0739437 1.5789474 
>       408       409       410       411       412       413       414       415       416       417       418 
> 1.6592179 2.0739437 1.1666667 1.6592179 1.5789474 2.0739437 1.1666667 1.9379562 1.6592179 0.0000000 1.6592179 
>       419       420       421       422       423       424       425       426       427       428       429 
> 1.6592179 1.5789474 1.5789474 1.6592179 2.0739437 1.5789474 2.7741935 1.9379562 0.4285714 1.9379562 1.5789474 
>       430       431       432       433       434       435       436       437       438       439       440 
> 1.1666667 1.5789474 1.9379562 0.0000000 2.0739437 1.9379562 2.0739437 1.6592179 1.6592179 1.5789474 1.5789474 
>       441       442       443       444       445       446       447       448       449       450       451 
> 1.5789474 1.9379562 1.6592179 1.5789474 1.9379562 1.5789474 1.5789474 2.0739437 0.4285714 0.4285714 2.0739437 
>       452       453       454       455       456       457       458       459       460       461       462 
> 1.6592179 1.6592179 2.0739437 0.0000000 1.6592179 2.0739437 1.9379562 1.9379562 2.0739437 0.1929825 1.5789474 
>       463       464       465       466       467       468       469       470       471       472       473 
> 1.5789474 1.9379562 0.0000000 2.0739437 2.0739437 1.9379562 1.5789474 0.0000000 0.0000000 2.0739437 2.0739437 
>       474       475       476       477       478       479       480       481       482       483       484 
> 1.6592179 2.0739437 2.0739437 1.9379562 1.6592179 2.0739437 1.5789474 1.9379562 1.6592179 2.2777778 1.5789474 
>       485       486       487       488       489       490       491       492       493       494       495 
> 0.1929825 1.5789474 1.5789474 1.6592179 2.0739437 1.9379562 1.5789474 2.0739437 1.6592179 1.9379562 1.1666667 
>       496       497       498       499       500       501       502       503       504       505       506 
> 1.5789474 2.0739437 2.0739437 2.2777778 1.9379562 1.1666667 1.5789474 1.9379562 0.0000000 1.6592179 2.0739437 
>       507       508       509       510       511       512       513       514       515       516       517 
> 1.9379562 1.9379562 2.0739437 2.0739437 1.9379562 1.9379562 0.0000000 1.5789474 2.0739437 2.0739437 2.0739437 
>       518       519       520       521       522       523       524       525       526       527       528 
> 2.0739437 1.5789474 2.0739437 2.0739437 2.0739437 1.5789474 1.5789474 1.9379562 0.1929825 2.0739437 2.0739437 
>       529       530       531       532       533       534       535       536       537       538       539 
> 1.5789474 1.9379562 1.5789474 2.0739437 1.1666667 1.6592179 1.5789474 1.9379562 2.0739437 1.9379562 0.1929825 
>       540       541       542       543       544       545       546       547       548       549       550 
> 0.0000000 2.0739437 0.4285714 0.0000000 2.7741935 1.5789474 1.6592179 1.5789474 0.1929825 0.0000000 2.0739437 
>       551       552       553       554       555       556       557       558       559       560       561 
> 1.9379562 1.6592179 1.5789474 2.0739437 1.5789474 1.5789474 1.9379562 1.6592179 1.9379562 1.9379562 1.5789474 
>       562       563       564       565       566       567       568       569       570       571       572 
> 0.0000000 1.9379562 1.5789474 1.5789474 0.0000000 1.1666667 1.9379562 1.9379562 1.6592179 2.0739437 1.5789474 
>       573       574       575       576       577       578       579       580       581       582       583 
> 2.0739437 1.5789474 1.6592179 0.1929825 1.5789474 1.9379562 1.5789474 2.0739437 1.6592179 1.6592179 1.6592179 
>       584       585       586       587       588       589       590       591       592       593       594 
> 1.5789474 2.0739437 2.0739437 1.5789474 1.6592179 2.0739437 1.5789474 2.7741935 0.0000000 1.9379562 1.1666667 
>       595       596       597       598       599       600       601       602       603       604       605 
> 1.5789474 2.0739437 2.7741935 1.9379562 1.5789474 1.9379562 2.7741935 0.0000000 2.0739437 1.9379562 1.5789474 
>       606       607       608       609       610       611       612       613       614       615       616 
> 1.9379562 0.1929825 1.9379562 1.5789474 1.5789474 0.1929825 1.9379562 0.0000000 1.6592179 1.5789474 0.1929825 
>       617       618       619       620       621       622       623       624       625       626       627 
> 2.0739437 0.0000000 1.6592179 1.9379562 0.0000000 1.1666667 1.5789474 2.0739437 2.0739437 2.7741935 0.0000000 
>       628       629       630       631       632       633       634       635       636       637       638 
> 2.2777778 0.0000000 2.0739437 1.5789474 1.6592179 1.5789474 0.1929825 0.1929825 2.0739437 1.9379562 0.0000000 
>       639       640       641       642       643       644       645       646       647       648       649 
> 0.0000000 1.6592179 1.5789474 2.0739437 1.6592179 0.0000000 1.6592179 2.0739437 1.6592179 0.1929825 1.5789474 
>       650       651       652       653       654       655       656       657       658       659       660 
> 0.1929825 2.7741935 2.0739437 1.5789474 1.9379562 1.9379562 0.0000000 0.0000000 2.0739437 1.1666667 1.6592179 
>       661       662       663       664       665       666       667       668       669       670       671 
> 1.9379562 0.1929825 1.6592179 1.6592179 2.0739437 1.5789474 2.0739437 1.9379562 1.6592179 0.0000000 0.1929825 
>       672       673       674       675       676       677       678       679       680       681       682 
> 0.1929825 2.0739437 1.9379562 2.0739437 2.7741935 1.6592179 1.5789474 1.9379562 2.2777778 1.9379562 2.0739437 
>       683       684       685       686       687       688       689       690       691       692       693 
> 2.0739437 1.5789474 0.0000000 1.9379562 1.6592179 1.5789474 2.0739437 1.9379562 1.5789474 1.9379562 1.9379562 
>       694       695       696       697       698       699       700       701       702       703       704 
> 2.0739437 2.0739437 1.9379562 1.6592179 1.6592179 2.0739437 1.6592179 1.6592179 1.6592179 2.0739437 1.5789474 
>       705       706       707       708       709       710       711       712       713       714       715 
> 1.5789474 2.0739437 1.6592179 1.9379562 1.6592179 2.0739437 2.0739437 2.0739437 1.5789474 1.9379562 2.0739437 
>       716       717       718       719       720       721       722       723       724       725       726 
> 0.1929825 1.6592179 1.9379562 2.0739437 2.0739437 2.0739437 1.6592179 1.9379562 1.6592179 2.0739437 2.0739437 
>       727       728       729       730       731       732       733       734       735       736       737 
> 1.9379562 2.0739437 2.0739437 1.9379562 0.0000000 0.0000000 1.9379562 1.9379562 0.4285714 1.6592179 2.0739437 
>       738       739       740       741       742       743       744       745       746       747       748 
> 1.9379562 1.1666667 0.0000000 2.0739437 1.6592179 1.5789474 1.5789474 0.0000000 2.0739437 1.5789474 1.6592179 
>       749       750       751       752       753       754       755       756       757       758       759 
> 1.9379562 1.9379562 2.0739437 2.0739437 1.5789474 2.0739437 1.9379562 1.1666667 1.9379562 2.0739437 1.5789474 
>       760       761       762       763       764       765       766       767       768       769       770 
> 1.9379562 1.5789474 1.5789474 2.0739437 1.9379562 1.6592179 1.5789474 0.1929825 1.9379562 1.9379562 1.5789474 
>       771       772       773       774       775       776       777       778       779       780       781 
> 1.9379562 1.6592179 1.5789474 2.0739437 0.0000000 1.5789474 1.5789474 2.0739437 1.6592179 2.0739437 2.0739437 
>       782       783       784       785       786       787       788       789       790       791       792 
> 0.0000000 1.9379562 0.0000000 0.1929825 1.1666667 1.6592179 1.5789474 0.1929825 0.0000000 1.9379562 1.9379562 
>       793       794       795       796       797       798       799       800       801       802       803 
> 1.1666667 1.6592179 2.0739437 1.1666667 1.9379562 0.0000000 1.6592179 1.6592179 2.0739437 2.0739437 1.6592179 
>       804       805       806       807       808       809       810       811       812       813       814 
> 0.0000000 2.0739437 1.5789474 1.9379562 1.9379562 0.4285714 1.9379562 2.0739437 2.0739437 1.6592179 1.9379562 
>       815       816       817       818       819       820       821       822       823       824       825 
> 2.0739437 1.9379562 1.6592179 1.6592179 0.1929825 1.5789474 1.5789474 1.9379562 1.9379562 1.9379562 1.9379562 
>       826       827       828       829       830       831       832       833       834       835       836 
> 2.0739437 1.6592179 1.6592179 1.6592179 1.9379562 1.5789474 2.0739437 0.1929825 0.0000000 2.0739437 2.0739437 
>       837       838       839       840       841       842       843       844       845       846       847 
> 0.0000000 2.0739437 1.5789474 0.0000000 1.9379562 2.2777778 1.5789474 0.1929825 1.5789474 1.9379562 2.7741935 
>       848       849       850       851       852       853       854       855       856       857       858 
> 0.0000000 1.6592179 2.0739437 1.9379562 1.6592179 2.0739437 1.9379562 1.1666667 1.5789474 1.5789474 2.0739437 
>       859       860       861       862       863       864       865       866       867       868       869 
> 1.6592179 1.9379562 1.9379562 2.0739437 1.9379562 2.0739437 1.5789474 0.0000000 1.5789474 0.0000000 1.9379562 
>       870       871       872       873       874       875       876       877       878       879       880 
> 1.6592179 1.9379562 1.9379562 0.0000000 2.0739437 1.5789474 0.0000000 1.5789474 2.0739437 1.5789474 1.6592179 
>       881       882       883       884       885       886       887       888       889       890       891 
> 1.6592179 2.0739437 2.0739437 1.9379562 1.9379562 0.0000000 2.0739437 2.2777778 0.1929825 2.0739437 1.9379562 
>       892       893       894       895       896       897       898       899       900       901       902 
> 0.1929825 0.0000000 0.1929825 2.0739437 0.0000000 1.6592179 2.0739437 2.2777778 1.9379562 1.5789474 2.0739437 
>       903       904       905       906       907       908       909       910       911       912       913 
> 1.9379562 1.9379562 2.0739437 1.6592179 2.0739437 1.9379562 2.0739437 1.5789474 1.9379562 1.6592179 1.9379562 
>       914       915       916       917       918       919       920       921       922       923       924 
> 0.1929825 2.0739437 2.0739437 2.0739437 0.1929825 2.0739437 2.0739437 1.9379562 2.0739437 1.9379562 1.6592179 
>       925       926       927       928       929       930       931       932       933       934       935 
> 0.1929825 0.0000000 2.7741935 1.5789474 1.9379562 1.6592179 1.5789474 0.4285714 0.4285714 0.0000000 2.0739437 
>       936       937       938       939       940       941       942       943       944       945       946 
> 1.6592179 2.0739437 1.6592179 1.9379562 0.1929825 1.9379562 0.1929825 1.5789474 2.0739437 1.9379562 1.9379562 
>       947       948       949       950       951       952       953       954       955       956       957 
> 1.5789474 0.0000000 1.5789474 1.5789474 1.5789474 1.5789474 2.0739437 1.5789474 1.5789474 0.0000000 1.5789474 
>       958       959       960       961       962       963       964       965       966       967       968 
> 1.6592179 2.0739437 1.5789474 1.6592179 1.5789474 1.9379562 2.0739437 0.1929825 1.5789474 1.6592179 2.0739437 
>       969       970       971       972       973       974       975       976       977       978       979 
> 1.5789474 2.0739437 1.6592179 1.9379562 2.0739437 2.0739437 1.5789474 2.7741935 1.9379562 1.9379562 1.5789474 
>       980       981       982       983       984       985       986       987       988       989       990 
> 0.0000000 2.0739437 1.9379562 1.9379562 1.5789474 0.1929825 0.0000000 1.5789474 2.0739437 1.5789474 2.0739437 
>       991       992       993       994       995       996       997       998       999      1000 
> 1.5789474 1.9379562 2.0739437 1.6592179 1.9379562 1.9379562 0.0000000 1.6592179 1.9379562 1.6592179

Правильный вывод должен быть либо, если рейтинг равен 0,1,2 или 3 и должен выглядеть примерно такэто:

> predict(fitTree,newdata2,type="class")
        1         2         3         4 
virginica virginica virginica virginica 
Levels: setosa versicolor virginica

Вместо virginica должно быть 1, 2 или 3.

Как мне устранить эту ошибку?Спасибо за любые предоставленные предложения:)

1 Ответ

0 голосов
/ 12 февраля 2019

Убедитесь, что ваша метка закодирована как фактор, если вы хотите дерево классификации.Это должно выглядеть примерно так:

dataset$Label = factor(dataset$Label, levels = c(0, 1))
...