我正在尝试使用MLR包进行特征选择。这是我的代码:
#特征提取
features.task = makeRegrTask(id = "cr", data = final1, target = "spam")
feature_selection= generateFilterValuesData(features.task, method = "information.gain")
plotFilterValues(feature_selection)
这是我得到的错误信息:
> features.task = makeRegrTask(id = "cr", data = final1, target = "spam")
Error in (function (cn, x) : Unsupported feature type (character) in column 'host'.
我应该怎样做来解决这个错误?感谢您提供的任何帮助。
回答:
host
列包含字符(字符串)值,但makeRegrTask
期望在作为data
传入的数据中仅看到响应变量和预测变量。
根据文档中的说明:
data
:包含特征和目标变量的数据框
如果您希望host
成为一个分类预测变量,您需要创建表示每个水平的虚拟变量。否则,在将final1
传入makeRegrTask
之前,请删除host
列。