我应该为多响应/因变量使用哪种 logit 或 probit 模型?

机器算法验证 分类数据 多项分布 罗吉特 概率
2022-03-25 12:37:53

我有300构成时间序列的对象300矩阵列X. 这个矩阵有5行和代表5每个天的时间序列信息300列。

我设置了一个300x5二进制值矩阵。所以第一行可能看起来像(11001),这意味着该列1X在第 1、第 2 和第 5 行有负面元素(按类别建模)1"),以及第 3 行和第 4 行中的正元素(按类别建模)0”)。

我有8预测变量可以很好地解释/与早期是否存在更多负面元素(即,如果我们观察到类似(11000))与以后是否有更多的负面因素(即我们观察到类似(00011))。

我该如何建模?我的知识不够广泛,无法知道是否有任何统计框架可以让我使用这个矩阵作为我的回应:

Y=(110011011000011.....)

使用它我想做类似的事情:

Y=a+BZ(我知道这不是一个正确的 logit/probit 规范,但我认为它可以传达我想要的内容)。

然后是一些系数的理想解释biB将会; 如果它是负面的,那么我们看到类似的东西的几率就会增加(11000)而不是像(00011)如果关联的预测器xiZ更大。

3个回答

您有两个不错的建议,但我认为其中任何一个都不是最佳的。如果您将单个的五元素向量转换为单个有序标量,您将丢失信息。如果有必要,这是可以接受的,但如果有更好的方法,您可能希望避免它。 多元广义线性模型将您的响应视为多维空间中的一个奇异点,而不是按时间排序的五个点。多元方法通常用于/理解您有五种不同类型的测量(这里是二进制)彼此相关的情况,但我收集您有五个相同类型测量实例的序列。最好适合为此设计的模型。

幸运的是,有一些模型专门针对这种情况而设计。您将需要使用广义线性混合效应模型或使用广义估计方程您应该选择哪一个取决于您要问的问题,GLiMM 提供有关协变量对各个研究单元的影响的信息,而 GEE 提供有关协变量对总体平均值的影响的信息。CV 上有几个线程讨论这些:

关于是使用 logit 链接还是 probit 链接,我在这里进行了相当广泛的讨论:Difference between logit and probit models(实际上,答案本质上更基本一些,因此可能值得先阅读一下。)

实际上,我不认为这里需要 logit 或 probit 回归。首先,我会将 Y 矩阵缩减为一个简单的 300x1 列向量的分数。例如,此 R 代码会将 Y 的每一行减少到 -3 和 +3 之间的数字,其中较大的值对应于“更负,稍后”:

f <- function(r) sum(r * c(-2, -1, 0, +1, +2))
Z <- apply(Y, 1, f)

然后,使用线性回归根据您的预测变量对这些分数进行建模。

model <- lm.fit(X, Z)

(这里,X 是您的 300x8 预测值矩阵,而不是您在第一段中提到的 5x300 矩阵。)回归系数将具有您想要的解释:较大的值表示“更负,稍后”的可能性更大。

如果您真的更喜欢逻辑模型,则 R 代码变为

model <- glm.fix(X, Z, family=binomial())

您的问题很简单,哪种模型更适合您的应用程序。该应用程序并没有让我觉得本质上是分类的。相反,您将 Y 矩阵构造为分类的。

如果您希望遵循回归方法,您可以尝试多元广义线性模型。请参阅 SABRE 包和http://www.amazon.com/Multivariate-Generalized-Linear-Mixed-Models/dp/1439813264