我很好奇为什么这个简单的代码对我不起作用:
wine$taste <- ifelse(wine$quality < 6, 0, 1)
wine$taste <- as.factor(wine$taste)
set.seed(123)
samp <- sample(nrow(wine), 0.6 * nrow(wine))
train <- wine[samp, ]
test <- wine[-samp, ]
mylogit <- glm(taste ~ pH+alcohol+density, data = train, family = binomial)
pred = predict(mylogit, newdata=test)
accuracy <- table(pred, test[,"taste"])
表格给出错误:
表中的错误(pred,test [,“taste”]):
alleArgumentemüssendieselbeLängehaben
因素和数值是否存在问题?所有的数值都是数字,但变量味道......
表函数采用什么参数?
答案 0 :(得分:0)
这些数据是否在包中可用,以便我可以重新创建分析?无论如何,我认为它是你指定测试集类的方式。你说<script src="https://cdn.jsdelivr.net/vue/1.0.24/vue.js"></script>
<!-- component template -->
<script type="text/x-template" id="grid-template">
<table>
<tbody>
<tr v-for="
entry in data
| filterBy filterKey
| orderBy sortKey sortOrders[sortKey]">
<td v-for="key in columns">
{{entry[key]}}
</td>
</tr>
</tbody>
</table>
</script>
<!-- demo root element -->
<div id="demo">
<form id="search">
Search <input name="query" v-model="searchQuery">
</form>
<demo-grid
:data="gridData"
:columns="gridColumns"
:filter-key="searchQuery">
</demo-grid>
</div>
,其中可能会返回一个长度为test[,"taste"]
的对象(这就是为什么你会得到错误,说明它们的长度必须相同),其中一个元素是1
,它又包含您要查找的类标签。
您需要做的是告诉它您需要直接使用$taste
元素。尝试:
$taste
也可能需要指定所需的预测值的哪一部分。不同的函数返回不同类型的预测对象。 table(pred, test$taste)
返回什么?您可能会发现它返回类,概率,很多东西。您可能必须指定您想要的类,而不是概率。