回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我一直在尝试在回归树(或随机林回归器)中使用分类输入,但是sklearn不断返回错误并要求数值输入。</p>
<pre><code>import sklearn as sk
MODEL = sk.ensemble.RandomForestRegressor(n_estimators=100)
MODEL.fit([('a',1,2),('b',2,3),('a',3,2),('b',1,3)], [1,2.5,3,4]) # does not work
MODEL.fit([(1,1,2),(2,2,3),(1,3,2),(2,1,3)], [1,2.5,3,4]) #works
MODEL = sk.tree.DecisionTreeRegressor()
MODEL.fit([('a',1,2),('b',2,3),('a',3,2),('b',1,3)], [1,2.5,3,4]) # does not work
MODEL.fit([(1,1,2),(2,2,3),(1,3,2),(2,1,3)], [1,2.5,3,4]) #works
</code></pre>
<p>据我所知,在这些方法中,分类输入应该是可能的,而不需要任何转换(例如WOE替换)。</p>
<p>还有人遇到过这种困难吗?</p>
<p>谢谢!</p>