【发布时间】:2015-04-01 22:11:02
【问题描述】:
当给定明显等效的输入时,我试图了解这两个平滑函数的不同行为。我的理解是locpoly 只接受一个固定带宽参数,而locfit 还可以在其平滑参数中包含一个变化部分(最近邻分数,“nn”)。我认为在locfit 中将此可变部分设置为零应该使“h”组件的行为类似于locpoly 中使用的固定带宽,但显然情况并非如此。
一个工作示例:
library(KernSmooth)
library(locfit)
set.seed(314)
n <- 100
x <- runif(n, 0, 1)
eps <- rnorm(n, 0, 1)
y <- sin(2 * pi * x) + eps
plot(x, y)
lines(locpoly(x, y, bandwidth=0.05, degree=1), col=3)
lines(locfit(y ~ lp(x, nn=0, h=0.05, deg=1)), col=4)
产生这个情节:
locpoly 给出平滑的绿线,locfit 给出摆动的蓝线。显然,locfit 在此处具有较小的“有效”带宽,即使假定的带宽参数对于每个参数具有相同的值。
这些函数有何不同?
【问题讨论】:
-
不知何故,当
h的带宽在lines(locfit(y ~ lp(x, nn=0, h=0.05, deg=1)), col=4)中更改为 0.10 时,两个平滑函数几乎相同 -
你看到this discussion了吗?
标签: r regression smoothing