我正在这样做:
db.Products.SqlQuery("SELECT * FROM Products WHERE Name LIKE '%{0}%' AND ORDER BY Name OFFSET 0 ROWS FETCH NEXT {1} ROWS ONLY", str, 10).ToList();
其中: mode1是来自随机森林的回归模型,y是根据训练数据预测的值 RFestimated是测试数据中的预测值
我正在尝试计算RMSE 是否有使长度相等的技巧?
这些是我的步骤:(代码)
RMSE <- (sum((RFestimated-model1$y)^2)/length(model1$y))^(1/2)
答案 0 :(得分:0)
在这里查看这些行:
#predict with test data
RFestimated <- predict(model1, dataTest)
[1] 118.7794
> length(RFestimated)
[1] 8352
> length(model1$y)
[1] 33405
您看到的是它们的长度不同。这应该如何工作?考虑一下您要做什么:
a <- c(1,2,3)
b <- c(4,5)
a-b
[1] -3 -3 -1
Warning message:
In a - b : longer object length is not a multiple of shorter object length
您需要根据火车数据或测试数据评估RMSE,但您需要将它们混合在一起。就是这个
RFestimated <- predict(model1, dataTrain)
qqnorm((RFestimated - model1$y)/sd(RFestimated-model1$y))
可以工作,或者这样:
RFestimated <- predict(model1, dataTest)
qqnorm((RFestimated - dataTest$y)/sd(RFestimated-dataTest$y))
第一个选项告诉您对用于拟合的样本中的数据进行拟合的程度如何,第二个选项为您提供测试数据的性能。