分析比例


13

我有一个包含多个总计为1的比例的数据集。我对这些比例沿梯度的变化感兴趣(请参见下面的示例数据)。

gradient <- 1:99
A1 <- gradient * 0.005
A2 <- gradient * 0.004
A3 <- 1 - (A1 + A2)

df <- data.frame(gradient = gradient,
                 A1 = A1,
                 A2 = A2,
                 A3 = A3)

require(ggplot2)
require(reshape2)
dfm <- melt(df, id = "gradient")
ggplot(dfm, aes(x = gradient, y = value, fill = variable)) +
  geom_area()

在此处输入图片说明

附加信息: 不一定是线性的,我这样做只是为了简化示例。也可以使用原始计数来计算这些比例。实际数据集包含更多的变量,总计为1(例如B1,​​B2和B3,C1至C4等)-因此,提示使用多变量解也将有所帮助...但是现在我还是坚持单变量统计方面。

问题: 如何分析此类数据?我已经阅读了一些,也许多项式模型或glm适合吗?-如果运行3(或2)个glms,如何合并预测值总计为1的约束?我不仅想绘制此类数据,还想进行更深入的回归分析。我最好使用R-如何在R中做到这一点?


proprcsplineStata中的命令可能是您要寻找的(我知道您想使用R,但这可能是一个起点):proprcspline计算给定xvar的yvar的每个类别中观察比例的受限三次样条平滑度,并且将它们绘制为堆叠区域图。可选地,可以针对一组控制变量(cvar)调整这些平滑比例。
boscovich 2012年

您能否详细说明“感兴趣”是什么意思?您是否只想针对梯度绘制比例?还是您想进行更深入的分析?如果是这样,其本质是什么?您希望从这些数据中学到什么?另外,您是否有可用的原始计数(会比较好)还是只有比例?您能否再说一下这些数据的组成和收集方式?
ub

1
@whuber:我想对此数据做更深入的分析。我的假设是比例会随着渐变而变化。计数也可用。
EDi 2012年

1
听起来您有合成数据。我对此并不了解,但是Aitchison的工作才是开始的地方。CRAN上有一个程序包,成分。
亚伦(Aaron)

Answers:


13

在一个维度上,这听起来像是进行Beta回归的工作(有或没有可变色散)。这是具有自然分布为0-1的beta分布因变量的回归模型。R包是betareg此处介绍了其用法。
对于两个以上的比例,Beta分布的通常扩展导致Dirichlet回归。一个R包DirichletReg是可用的,例如在这里描述。

有一些原因不对真正的构成数据使用logit链接和多项式logistic回归,这主要与它们暗示方差的强大假设有关。然而,如果你的数据是所有真正标准化计数(丰度?),这些假设可能是正确的,彼得的建议很可能是要走的路。


谢谢您的链接,我将对其进行介绍。DirichletReg看起来很有前途!例如,链接的幻灯片3:“如果在某个类别中回答的“概率”分散在选择中,则Dirichlet方法将提供更多信息。。因为我不知道如何使用mlogit进行此操作,因为选择不必是唯一的。也是图形表示的一种好方法-没想到...
EDi

对于图形,您可能会发现R函数splineplotcdplot很有帮助。确实,如果您只需要拟合的线并且不需要大量的回归机制,那么您可以哄骗cdplot给出相关的曲线(这只是下面的密度
共轭木

抱歉,很明显,我的意思是在上面键入spineplot
共轭木

请注意,DirichletReg软件包现在可以在CRAN上使用,并且已经发布了小插图
jbaums 2015年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.