R预测函数类型="class"错误
R predict func type="class" error
我正在处理数据集以尝试能够拟合分类树
我拆分了数据集:
set.seed(2)
train=sample(1:nrow(mydata),nrow(mydata)/2)
test=-train
training_data=mydata[train,]
testing_data=mydata[test,]
testing_Donates=Donates[test]
之后我做了一个树模型:
tree_model=tree(Donates~.,training_data)
plot(tree_model)
text(tree_model)
然后我尝试使用预测函数:
tree_pred<- predict(tree_model, testing_data, type="class")
但我一直收到错误消息:
Error in predict.tree(tree_model, testing_data, type = "class") :
type "class" only for classification trees
谁能告诉我哪里出了问题,我该如何解决?
我今天遇到了同样的问题,我能找到的就是这个 post。事实证明,R 会自动将整数视为区间变量,即使您有时可能希望将它们视为分类值。您可以使用
强制执行此操作
as.factor(x)
在分类整数值列表中。所以在创建模型时使用:
tree_model=tree(as.factor(Donates)~.,training_data)
我正在处理数据集以尝试能够拟合分类树 我拆分了数据集:
set.seed(2)
train=sample(1:nrow(mydata),nrow(mydata)/2)
test=-train
training_data=mydata[train,]
testing_data=mydata[test,]
testing_Donates=Donates[test]
之后我做了一个树模型:
tree_model=tree(Donates~.,training_data)
plot(tree_model)
text(tree_model)
然后我尝试使用预测函数:
tree_pred<- predict(tree_model, testing_data, type="class")
但我一直收到错误消息:
Error in predict.tree(tree_model, testing_data, type = "class") :
type "class" only for classification trees
谁能告诉我哪里出了问题,我该如何解决?
我今天遇到了同样的问题,我能找到的就是这个 post。事实证明,R 会自动将整数视为区间变量,即使您有时可能希望将它们视为分类值。您可以使用
强制执行此操作as.factor(x)
在分类整数值列表中。所以在创建模型时使用:
tree_model=tree(as.factor(Donates)~.,training_data)