私のタスクは、回帰タスクを階層化することです。データは次のようになります
f1,f2,f3,... m1,m2...,p1,p2,p3...
ここで、f_i は数値で、他の列は係数と整数です。
次のコマンドを実行した後、自己定義メジャー m1 を定義します。
measures1 = list(m1, medae)
measures2 = lapply(measures1, setAggregation, train.mean)
measures = c(measures1, measures2)
# rdesc = makeResampleDesc("CV", iters = 3, predict = "both", stratify.cols = "Iodine" ) #Default is 2/3, both=train&test
rdesc = makeResampleDesc("CV", iters = 3, predict = "both" ) #Default is 2/3
というエラーが表示されました
[Resample] cross-validation iter: 1
Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) :
contrasts can be applied only to factors with 2 or more levels
入力データフレームを数値データのみを含むようにサブセット化すると、そのようなエラーは発生しません。実際、数値データのみが予測に役立ちますが、トレーニングとテストの分割で階層化するには他の列が必要です。誰が何が悪いのか知っていますか?