0

我正在使用多元线性回归。

我有 z 输出,这是 ax*y 交互的结果。

我想创建这些数据的表面图,但没有任何运气。我已经尝试过突击队线框和透视,但似乎我还不能设计我的突击队。

我创建了一个漂亮的 scatterplot3d,但如何创建相同数据的曲面图?

4

2 回答 2

4

当您说您已经在线性回归中拟合了 3D 表面时,我假设您知道自己在做什么。期望的是xperspwireframey 值的网格,以及每个网格点的预测 z 高度。您可以使用expand.grid. 这是一个指示性示例。

preddf <- expand.grid(x=seq(xmin, xmax, len=51),
                      y=seq(ymin, ymax, len=51))

preddf$z <- predict(model, preddf)

persp(preddf)

xminxmax和替换为预测变量的范围yminymax将 51 替换为所需的网格大小/密度。

于 2013-07-04T14:48:05.813 回答
3

另一种选择expand.grid是使用outer,它更快。

使用@HongOoi 数据:

z <- outer(x,y, function(x,y) 
  predict(mod,data.frame(x=x,y=y)))
persp(x,y,z)
于 2013-07-04T15:02:49.930 回答