0

我正在处理学生表现数据集,我收到此消息错误

trafo 中的错误(data = data,numeric_trafo = numeric_trafo,factor_trafo = factor_trafo,:不支持数据类“字符”另外:警告消息:在 storage.mode(RET@predict_trafo)<-“double”:强制引入的 NA

从这段代码,我不知道为什么?

set.seed(1)
ind <- sample(2,nrow(d2),replace = TRUE ,prob = c(0.7,0.3))
trainData <- d2[ind==1,]
testData <- d2[ind==2,]
library(party)
myFormula <- higher~G1+G2+G3
d2_ctree <- ctree(myFormula, data=trainData)
table(predict(d2_ctree),trainData$higher)
4

2 回答 2

0

虹膜数据的示例(因为您没有提供d2数据):

library(party)
set.seed(1234) #To get reproducible result
ind <- sample(2,nrow(iris), replace=TRUE, prob=c(0.7,0.3))
trainData <- iris[ind==1,]
testData <- iris[ind==2,]
myFormula <- Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width
d2_ctree <- ctree(myFormula, data=trainData)
table(predict(d2_ctree),trainData$Species)
plot(d2_ctree)

来源:来源

于 2020-11-04T14:18:43.733 回答
0

您应该将所有非数字列转换为数字。

d2$higher = factor(d2$higher,levels = c("Label1","Label2","Label3"), 
                    labels = c(1, 2, 3))
于 2021-11-10T20:19:43.340 回答