R knnImpute不起作用

阿米特

我以以下代码为例:

df = data.frame(x=c(100:104,NaN,106:110),y=c(200:204,NaN,206:210))
s = preProcess(df,method="knnImpute")

当我使用以下代码使用预测函数时:

pre = predict(s,df)

R只是崩溃了,我必须重新启动。

上面的代码有什么问题?另外,您需要2列才能使knnImpute正常工作吗?

拉贾

维护该程序包的Gregory Jefferis清除了一个谜:用knnImpute进行预处理会静默删除任何包含NA值的列,因此变量x和y在predict()之前都会丢失。这是一个不崩溃的示例。诀窍是要有更多没有NA的相关列。

x=rnorm(100); y=rnorm(100)
z1 = x+2*y + rnorm(100,sd=0.1)
z2 = 3*x+2 + rnorm(100,sd=0.3)
z2 = 2*y+8 + rnorm(100,sd=0.3)
df = data.frame(x,y,z1,z2)
head(df)
df[25, 1] = NA
df[50, 2] = NA
xform = preProcess(df, method="knnImpute")
predict(xform, df)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章