4

次のようなカーネル関数があります。

x <- 1:100
y <- rnorm(100, mean=(x/2000)^2)
plot(x,y)
kernel <- ksmooth(x,y, kernel="normal", bandwidth=10)
print(kernel$y)

x 値の範囲外の点で予測しようとするとNaN、データを超えて外挿しようとしているため、が得られます。

x <- 1:100
y <- rnorm(100, mean=(x/2000)^2)
plot(x,y)
kernel <- ksmooth(x,y, kernel="normal", bandwidth=10, x.points=c(130))
print(kernel$y)

> print(kernel$y)
[1] NA

私が変更しても、range.xそれは動揺しません:

x <- 1:100
y <- rnorm(100, mean=(x/2000)^2)
plot(x,y)
kernel <- ksmooth(x,y, kernel="normal", bandwidth=10, range.x=c(1,200) , x.points=c(130))
print(kernel$y)

> print(kernel$y)
[1] NA

ksmoothデータを超えて外挿する関数を取得するにはどうすればよいですか? これが理論的には悪い考えであることはわかっていますが、実際には、この問題は常に発生します。

4

1 に答える 1