私はあなたの行の長さの問題を理解していないが、ここでそのエラーが一般的に何を意味するのかです:
RPARTは、決定木を構築するために制約を使用しています。ここでthe docsから、デフォルト値です:あなたはこれらの制約を軽減する必要が
rpart.control(minsplit = 20, minbucket = round(minsplit/3), cp = 0.01,
maxcompete = 4, maxsurrogate = 5, usesurrogate = 2, xval = 10,
surrogatestyle = 0, maxdepth = 30, ...)
。 @JeanVAdamsが言ったように、最低限で始まる:
rpart(formula=fm.pipe, data=Data,
control=rpart.control(minsplit=1, minbucket=1, cp=0.001))
あなたの最初の結果は、おそらくあまりにも多くのノードを持つことになりますので、あなたは、あなたがまともなサイズのツリーを取得するまで、ゆっくりとこれらの制約を構築する必要があります。
あなたはまだ混乱している場合は、ここで
例だ:
あなたは食料品店のデータを見ている、とあなたがお店に最も人気のある時間の木を見たいとしましょう。わずか24時間ですよね?したがって、独立変数には24の可能性しかありません。 Rpartには次のような状態があります
"ノードを分割するには少なくとも20個のものが必要です。"
これは、あなたのノードが一度に分割できないことを意味します。 150億行があっても、それを分割する方法は24通りしかありません。おそらくこれより複雑ですが、これは始めるのに適しています。
私は実際にこの正確な問題(時間による買い物客)を見ていた、と私はすべてのツリーを取得するために、可能な限り低いレベルでの私の制約を残していた:
rpart(formula=fm.pipe, data=Data, control=rpart.control(minsplit=1, minbucket=1, cp=0.001))