【问题标题】:How to find confidence interval in 3d plots in cran R?如何在 cran R 的 3d 图中找到置信区间?
【发布时间】:2016-01-26 18:26:58
【问题描述】:

我有这个用 cran R 绘制的 3d 图

rb = rep(seq(0.1, 1, 0.1), 10)
ro = sort(rb)
lods = runif(100) #create a random LOD score

library(scatterplot3d)
lodsplot<- scatterplot3d(rb, ro, lods)

我使用 max(lods) 找到了 LOD 分数的最大值,因此找到了各自的 rb 和 ro。现在,我想找到 rb 和 ro 的 95% CI。假设 max(lods) = 0.8 并且 rb 和 ro 分别为 0.2 和 0.3,我想到了使用以下方法绘制平面:

lodsplot$plane3d(c(0.2, 0.3, 0.8))

然后找到平面上方的点(我不知道该怎么做)。我的想法正确吗?谢谢!

注意:

如果我只是做一个 2d 绘图,我会这样做:

plot(rb, lods, type = "l)
which(lods == max(lods))
limit = max(lods) - 1.92
abline(h = limit)
#Find intersect points:
above <- lr > limit
intersect.points <- which(diff(above) != 0)



    

【问题讨论】:

  • 您似乎在这里问了两个问题:如何找到置信区间;如何找到平面上方的点。如果是这样,也许改写它,这样它显然是你想要的。
  • 我想找到 rb 和 ro 的置信区间。我提到平面上方的点的原因是因为我用来在 2d 图中找到置信区间的方法是在 abline 上方找到点。
  • 我刚刚编辑了问题以使其更清楚!谢谢Dominic Comtois!

标签: r scatter3d


【解决方案1】:

您需要找到定义假设的 95% 上限的平面上方的点,您建议具有以下等式:

 lods = 0.2+ 0.3*rb+ 0.8*ro

所以计算满足隐式不等式的点的项数:

high <- which(lods > 0.2+ 0.3*rb+ 0.8*ro)

还有情节:

png()
lodsplot<- scatterplot3d(rb, ro, lods)
high <- which(lods > 0.2+ 0.3*rb+ 0.8*ro)
lodsplot$plane3d(c(0.2, 0.3, 0.8))
lodsplot$points3d( rb[high], ro[high], lods[high], col="red"); dev.off()

请注意,scatterplot3d 中的 plane3d 函数也接受来自 lm 或 glm 的结果,因此您可以首先计算一个模型,其中 lods ~ rb +ro 然后使用 predict( ..., type="response") 计算 95% 的预测表面,并使用此方法为点着色。请参阅:predict and multiplicative variables / interaction terms in probit regressions,了解在公认更复杂的模型上的等效程序的工作示例。

您还可以在 [r] prediction surface 上进行搜索并找到其他可能有用的答案,例如 BenBolker 建议使用 rgl:"A: scatterplot3d for Response Surface in R"

【讨论】:

  • 42-,你能解释一下为什么方程应该是 lods = 0.2 + 0.3*rb + 0.8*ro 吗? 95% 的置信区间在哪里发挥作用?我只是想更多地了解这背后的数学。非常感谢您的帮助!
  • 在您对plane3d 的调用中,平面的隐式方程为Z=0.2+ 0.3*X+ 0.8*Y;其中 X,Y,Z 分别具有 rb,ro 和 lods 的作用。我看到您假设分配的顺序不同,但是如果您查看绘制的实际平面,您会发现截距为 0.2。 95% CI 需要使用predict 计算,使用 type="response 使用在任何 X 和 Y 值范围内认为合适的值网格。(我假设您选择的术语:所需 CI 是有点困惑。rorb 不能是 CI;它们是固定的。)
  • 哦,我明白了。我想我理解错了plane3d。我想要的是找到 lods 的 95% 置信区间(这是对数似然),然后找到匹配的 rb 和 ro,即点的 x 和 y 坐标。我确实找到了解决方案。我计算了lods的95%置信区间,然后应用了xyz.coords。无论如何,谢谢你 42-。您对 points3d 的使用实际上让我找到了答案!
猜你喜欢
  • 1970-01-01
  • 2020-04-24
  • 2021-02-05
  • 1970-01-01
  • 2019-05-07
  • 1970-01-01
  • 2012-09-13
  • 1970-01-01
相关资源
最近更新 更多