首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用局部平滑的均值进行预测?

如何利用局部平滑的均值进行预测?
EN

Stack Overflow用户
提问于 2014-02-03 16:44:03
回答 1查看 305关注 0票数 0

(这里的统计初学者)。

我有一些训练数据(x,y),并希望对新数据x_new进行预测。

现在假设我有下面这幅图的数据,但是我不知道y是如何计算的。因此,我想使用数据,我有一个计算,对任何给定的x,即y数据的局部平均值,因为这似乎是我所能做的最好的猜测。

代码语言:javascript
复制
install.packages("gplots")
library("gplots")

x <- abs(rnorm(500))
y <- rnorm(500, mean=2*x, sd=2+2*x)
bandplot(x,y)

对于给定的x,是否有一个R函数来预测y,使用局部平滑的平均值(这里用红色表示,这是函数带图),还是类似的东西?

EN

回答 1

Stack Overflow用户

发布于 2014-02-04 19:40:24

wapply图解返回局部平滑的平均值,作为x和y的表。

代码语言:javascript
复制
x <- 1:1000
y <- rnorm(1000, mean=1, sd=1 + x/1000 )
wapply(x,y,mean)

要预测,我想,需要解析wapply返回的表中最接近的x,然后推导y的局部平均值。

对于a值,最接近的x将由索引来表示:

代码语言:javascript
复制
index = which(abs(wapply(x,y,mean)$x-a)==min(abs(wapply(x,y,mean)$x-a)))

那么预测应该是:

代码语言:javascript
复制
pred = wapply(x,y,mean)[index]

因此,在一行中:

代码语言:javascript
复制
locally_smoothed_mean_prediction = function(a) wapply(x,y,mean)$y[which(abs(wapply(x,y,mean)$x-a)==min(abs(wapply(x,y,mean)$x-a)))]
> locally_smoothed_mean_prediction(600)
[1] 1.055642
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21537027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档