我无法让插入符号工作。从已知的开始,http://machinelearningmastery.com/feature-selection-with-the-caret-r-package/中的示例完美无缺。
当我替换我自己的数据集时,它失败了:
function ValidateInput() {
var name = document.getElementById("name").value;
var email = document.getElementById("email").value;
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
if (name != '' && email != '') {
if (email.match(emailReg))
alert("Not a real Email address!");
return false;
}
alert("Missing feilds!");
return false;
}
据我所知,x和y中的样本行数相同;
> results <- rfe(x, y, sizes=c(1:5), rfeControl=control)
Error in rfe.default(x, y, sizes = c(1:5), rfeControl = control) :
there should be the same number of samples in x and y
详情请见下文。
我查看了类似的问题,例如R rfe function "caret" Package error: there should be the same number of samples in x and y和R trying to get caret / rfe to work。后者是相关的,但它似乎没有帮助。我已经尝试将我的y转换为像
这样的向量> nrow(x)
[1] 691231
> nrow(y)
[1] 691231
或
> y <- as.vector(y)
但错误仍然存在。 当然我做了一些愚蠢的事情,我只是看不出我的错误。任何帮助表示赞赏。
: - )
YARC
----------------------细节--------------
------ --------脚本
> y <- as.vector(as.list(y))
------ ------特征
library(feather)
library(mlbench)
library(caret)
path <- "faultclass.feather"
df <- read_feather(path)
set.seed(7)
control <- rfeControl(functions=rfFuncs, method="cv", number=10)
x <- subset(df,select=-c(fault))
y <- df["fault"]*1
results <- rfe(x, y, sizes=c(1:5), rfeControl=control)
print(results)
predictors(results)
plot(results, type=c("g", "o"))
答案 0 :(得分:0)
我有同样的问题,最终我通过使用
让它工作y = as.vector(unlist(c(y)))
我不确定为什么这与
有所不同y = as.vector(y)
但这对我有用。