Анализ случайных лесов, дающий NaNs - PullRequest
0 голосов
/ 25 марта 2020

У меня есть df, который все числа c значения. Столбцы 1: 1028 являются предикторами, а столбцы 1029: 1033 - ответами. Вот подмножество этого:

      PhHAL9G636300 PhHAL9G639600 PhHAL9G640000 PhHAL9G642000 PhHAL9G643800 PhHAL9G645300 PhHAL9G646100 PhHAL9G646600 PhHALJ003900     Biomass      Growth    WaterLoss
PENW3      5.365778    2.98025485      5.495861   4.405202465     2.9113147     2.5418600    2.09767062    2.52296664    1.9087030  0.46125981 -13.4226665  -0.37320470
PENW1      3.490321    4.64568874      3.717329   3.604487984     2.1293068     2.2661013   -1.47617955   -0.83020824   -1.4564567  4.61259811 -14.4985291  -1.41470618
CERD2      4.602228    1.83881344      4.474194   2.395140203     3.7523682    -0.2886215   -0.73070022    2.79344405   -0.7981627 -0.76634289   5.5581189  15.96563076
COCW2      4.614825    1.59769640      5.498260   0.006269791     1.9118368     4.2591423    3.73962184    2.53800230    2.5671915 -0.13178852 -25.7182390  -0.07377302
PENW2      2.874244    3.33668026      2.686314   3.640362110     3.3344128     1.5625493   -1.92483779    0.85800308   -1.8455277 -0.09584619 -15.5743917  -0.99376599
NIGD3      2.534445    1.86024236      3.028953   3.531425944     4.2376438     2.0732650   -0.46514048    0.79555084   -0.5451820  1.05436439  12.0221867  21.04783002
PEND2      5.362056    2.64328649      4.464727   3.452061385     3.8409665    -0.5227258   -0.06950176    2.05314895   -1.5741809  0.68405104   4.6766551  11.99731270
CERD3      6.379754    3.02126477      5.958883   2.617817128     3.2571087     0.6389388   -1.54158346    2.70402517   -1.5102857 -0.98235901   4.4562891  15.74806130
PEND3      5.530008    3.49150186      4.664897   4.122665811     3.4805644     1.6611925    1.00556471    2.13871970   -0.5366320  0.42174575   3.2075488  12.88432662
NIGW3      4.183288    5.26329612      5.928775   8.194201254     1.4188970     3.3488663   -0.24100014    1.17649150   -0.3305682  0.29951936   1.1783257   1.30187685
SORW2      6.893395    3.84929409      7.853042   0.700629044     1.2822700     3.7429352    2.73703304    3.38057924    2.5338634  0.02995194 -12.5004986  -5.77946530
BISD3      7.044496    2.75794859      3.816874   2.703812532     2.6916801     2.3260304    3.37232732    2.31685090    1.7024061 -1.02864818  -0.6121276  14.66858209
COCD2      5.393332    3.05175638      5.822644   2.200587922     2.2212163     2.4246024    3.13408898    2.07709126    2.1863062 -0.10286482  -2.4485105   7.86349310
BISW2      2.174211    2.62450842      5.128353   4.037738498     1.3183220     0.9764650    0.53499762    1.02802526    0.4124477  1.55750066 -25.8719336 -13.89189391
SORD3      6.154951    2.22626768      4.676438   0.489662530     1.1602737     1.6238320    3.90773303    3.34912476    3.7395865  0.11315130   0.2693362  17.67178436
COCW3      4.341137    4.05631371      5.292476   2.505723413     0.4784145     0.1552958    2.35139206    2.34302308    1.9836908 -1.03034659 -25.2571550  -1.06753902
CERW1      4.980878    0.91666130      2.190792   1.724122567     3.0002243    -0.9078029   -1.30732267    1.90047369   -1.3084019 -0.11381736 -10.3487734  -0.48603403
NIGW1      4.310666    5.24869379      6.482000   6.341412520     2.6579484     3.7324397   -0.69538644    1.39456781   -0.7667490 -0.07787503   1.9467990  -2.35639710
SORD2      3.439050    1.01743984      3.608031   1.984325521     0.9697594     1.9438491    2.75019240    3.59450372    3.0152745 -0.14915399   1.8118978  19.30355526
BISW3      4.995399    3.02559441      5.391413   0.707718031    -0.0867396     2.1041361    3.57258520    2.88651590    2.2532781  1.48561601 -26.3330176 -12.63775254
SORD1      4.867184    3.58269882      5.082423   0.847579020     1.1842905     3.2943452    3.54584508    2.26684212    3.2791237 -1.80013432  -3.0361530  18.53648347
NIGD2      3.433412    1.38880580      5.344590   6.113465129     1.3389915     0.9967764    0.55527371    1.04742251    0.4318620  1.16237244  10.5530804  20.06039943
SORW3      6.832991    3.48434777      7.954499  -0.373941722     0.9673997     3.8959556    2.87342668    3.53076025    2.5194703  1.12619278  -7.8896590  -6.45557334
PEND1      4.536131    1.98241616      2.469180   2.938093546     4.6266296    -0.3003059   -1.62573524    1.53755316   -1.5869045  0.49889437   3.3544594  12.90013295
CERW3      3.947328    1.97539246      4.499408   1.135578151     2.1385166    -0.2011640   -0.65101772   -0.06185877   -0.7272633 -0.04193271  -7.1211857  -1.98319240
NIGD1      1.517705   -0.02588437      2.040182   4.303738855     3.0117854    -0.9594330   -1.35627738    0.18988023   -1.3514038  0.88463744   8.0555996  20.38861318
COCW1      4.705918    2.51742179      4.476741   0.975394641     1.2854224     3.7611179    3.28623937    2.48855442    3.5451750  0.60502910 -26.9477962   0.97206804
BISD2      4.838736    3.99032517      7.239421   2.461942761     2.4587895     2.0971745    3.19578030    2.09829508    1.4836582 -1.10579679  -0.9059489  14.44078502

Я следую руководству по пакету IPMRF (стр. 7):

#IMP based on CIT-RF (party package)
library(randomForestSRC)
library(party)
mtcars.new <- mtcars
ntree<-500
da<-mtcars.new[,3:10]
mc.cf <- cforest(carb+ mpg+ cyl ~., data = mtcars.new,
control = cforest_unbiased(mtry = 8, ntree = 500))
#IPM case-wise computing with OOB with party
pupf<-ipmparty(mc.cf ,da,ntree)
#global IPM
pua<-apply(pupf,2,mean)
pua

Но я переключаю mtcars для своего набора данных. Тем не менее, когда я запускаю мой, я получаю все NaN в выводе, и я не могу понять, что не так с моим кодом. До сих пор я проверял, все ли числа c, если это предел в предикторах (пробовал 10, а не 1028), изменил mtcars, чтобы иметь отрицательные значения, чтобы проверить, так как у меня есть отрицательные значения, но ни одно из них, кажется, не проблема. Конечно, пожалуйста, проверьте меня на всякий случай. Вот мой код, который я запускаю с моим набором данных:

phallii.cf = cforest(Biomass + Growth + WaterLoss ~., data= RFTrainData, control=cforest_unbiased(mtry=33, ntree=1000)) #mtry = p/3 

da = RFTrainData[,1:1028] #predictor variables only

ntree=1000

phallii.ipm = ipmparty(phallii.cf, da, ntree)

Если у кого-то есть какие-либо идеи, я был бы очень признателен!

...