本人专业是通信与信息系统,偶然发现时间序列分析方法对信号分析非常有用,下面的程序来自范剑青老师的《非线性时间序列-建模、预报及应用》6.2.6局部线性平滑
我的问题是,grid代表什么?实验数据是一个时间序列,我最开始将grid理解为估计值的时刻,method=1也就是local constan fit时,数据靠谱;method=0时,local linear fit,程序算出的数据灰常不靠谱,,,也可能是我理解的错的离谱。
还有一个问题,对平滑后的实验数据进行预测,请问有没有多元局部线性回归预测的S-PLUS实现
感觉是个很基础的问题,但是姐有点急了,希望各位统计专业的好同志能够伸出援手,谢谢了
lls<-function(x, y, h, grid, method=1,iker = 1)
{ # SIMPLE BUT NAIVE IMPLEMENTATION of
# local constant or local linear with kernel symmetric beta kernel
# (1-u^2)^iker and bandwidth h, evaluated at "grid".
#method = 0, local linear fit;
# = 1, local constant fit
#iker is an integer.
#result: grid, est
ngrid<-length(grid)
res <- rep(0,ngrid)
for (j in 1:ngrid)
{ w <- 1 - (x-grid[j])^2/h^2; #Epanechnikov kernel
x0 <- x[ w > 0] #local data
y0 <- y[ w > 0]
w <- w[w > 0]
w <- w^iker
coef <- lsfit(x0-grid[j],y0,w)$coef
if(method==1)
res[j] <- lsfit(x0-grid[j],y0,w)$coef[1]
else
res[j] <- lsfit(x0-grid[j],y0,w,interp=F)$coef[1]
}
list(grid=grid,est=res)
}