R:二维非参数回归

R:二维非参数回归,r,statistics,R,Statistics,R中的哪些包和函数可以执行二维非加性局部回归/平滑。例如,考虑 b<-seq(-6*pi,6*pi,length=100) xy<-expand.grid(b,b) x=xy[[1]] y=xy[[2]] z= sin(x)+cos(y) + 2*sin(x)*cos(y) contour(b,b,matrix(z,100,100)) b你可以用黄土做这件事: fit <- loess( z ~ x+ y, span=0.01 ) dev.new() contour( b

R中的哪些包和函数可以执行二维非加性局部回归/平滑。例如,考虑

b<-seq(-6*pi,6*pi,length=100)
xy<-expand.grid(b,b) 
x=xy[[1]]
y=xy[[2]]
z= sin(x)+cos(y) + 2*sin(x)*cos(y)
contour(b,b,matrix(z,100,100))

b你可以用黄土做这件事:

fit <- loess( z ~ x+ y, span=0.01 )
dev.new()

contour( b, b, matrix( predict(fit), 100, 100 ) )

fitmgcv有多种二维样条线选项。

好了,现在有点复杂了,在加法二进制框架中该怎么做?您也可以尝试stats.stackexchange.com使用二进制数据执行此操作可能有点棘手。我能想到两件事:(1)无论如何都要做;使用bootstrap获取置信区间(由于空间方面的原因有点棘手——block bootstrap?)或(2)在mgcv中使用gam()(但有关此方法的困难,请参见下面的@ucfagls注释)PS也许你也可以尝试一些傅里叶变换或小波变换/平滑。我正在看locfit软件包,用于在加法模型中进行局部似然分析,但会不断出错。尽管黄土具有二元性,但我可能不得不这样做。在我看到格雷格的答案后,这将是我的建议。然而,当我尝试这种方法时,我需要使用大量的结来拟合一个非常复杂的曲面,即使这样,拟合效果也不如本例中的
leash()。我使用了类似于gam(z~s(x,y,k=200)
的东西来获得一个合理的匹配。我没有进一步探索,因为我的旧笔记本电脑无法快速匹配这些型号。