如何对在转换后仍然不正常的非正常数据执行回归?


15

我有一些数据(158例)来自于李克特量表对21个调查表项目的回答。我真的希望/需要进行回归分析,以查看问卷中的哪些项目可以预测对整体项目的满意度(满意度)。响应不是正态分布的(根据KS测试),我已经以我能想到的各种方式(逆,对数,log10,sqrt,平方)对其进行了转换,并且顽固地拒绝了正态分布。残留图看起来到处都是,所以我认为进行线性回归并假装其表现正常(这也不是泊松分布)确实是不合法的。我认为这是因为答案非常接近(平均值为3.91,95%CI为3.88至3.95)。

所以,我在想我是否需要一种转换数据的新方法,或者需要某种非参数回归,但是我不知道我在SPSS中可以做的任何事情。


1
考虑Box-Cox转换(en.wikipedia.org/wiki/…)。将残差图添加到您的问题中可能会有所帮助。
M. Berk

3
是的,请告诉我们您的残差图。也许也是一个QQ情节。
大卫·马克思

5
如果您的值是离散的,特别是如果将它们压缩到一端,则可能没有任何转换可使结果大致正常。但是,对正态性的形式化假设检验不能回答正确的问题,并且会导致您执行的其他步骤取决于您是否拒绝正态性而不再具有其名义性质。
Glen_b-恢复莫妮卡

1
比例赔率逻辑回归可能是解决此问题的明智方法,但我不知道SPSS中是否提供该方法。
Ben Bolker

3
我不认为回归是正确的方法,也不是出于正态性考虑。您的问卷调查答案甚至可能不是主要的。例如,如果您问一个人“您快乐吗?”并得到答案3,而上个月是4,这是否意味着他的快乐程度降低了25%?很可能不会。因此,在开始考虑正常之前,
Aksakal

Answers:


32

您无需假设正态分布即可进行回归。无论分布如何,最小二乘回归都是BLUE估计量(最佳线性,无偏估计量)。参见高斯-马尔可夫定理(例如Wikipedia)。正态分布仅用于表明估计量也是最大似然估计量。一个普遍的误解是,OLS以某种方式假定了正态分布的数据。它不是。它要普遍得多。


2
这是真的。对许多人而言,常常忽略这一事实。
Repmat '16

同意@Repmat。我不确定我是否通过了正常性测试...但是我的模型可以正常工作。
HEITZ '16

5

与其依靠残差的正态性检验,不如通过理性判断来评估正态性。正常性测试不会告诉您数据是正常的,只是告诉您数据不是正常的。但是鉴于数据只是样本,您可以确定如果没有测试它们实际上不是正常的。要求大致正常。测试不能告诉你。在较大的N处,测试也会变得非常敏感,或者更严重的是,随着N的变化,敏感度也会有所不同。您的N处于敏感度开始变高的范围内。如果您多次在R中运行以下模拟并查看这些图,那么您会发现正态性测试对大量正态分布表示“不正态”。

# set the plot area to show two plots side by side (make the window wide)
par(mfrow = c(1, 2)) 
n <- 158 # use the N we're concerned about

# Run this a few times to get an idea of what data from a 
# normal distribution should look like.
# especially note how variable the histograms look
y <- rnorm(n) # n numbers from normal distribution
# view the distribution
hist(y)
qqnorm(y);qqline(y)

# run this section several times to get an idea what data from a normal
# distribution that fails the normality test looks like
# the following code block generates random normal distributions until one 
# fails a normality test
p <- 1 # set p to a dummy value to start with
while(p >= 0.05) {
    y <- rnorm(n)
    p <- shapiro.test(y)$p.value }
# view the distribution that failed
hist(y)
qqnorm(y);qqline(y)

希望通过模拟,您可以看到正态性测试可以轻松拒绝看起来很正常的数据,而正态分布的数据看起来可能与正态相差很远。如果要查看该值的极高值,请尝试n <- 1000。分布看起来都正常,但仍以与较低N值大致相同的速率通过测试失败。相反,如果N分布较低,则通过测试的结果可能与正常情况相去甚远。

SPSS中的标准残差图对于评估正态性不是非常有用。您会看到异常值,范围,拟合优度,甚至杠杆。但是很难从中得出常态。尝试以下模拟比较直方图,分位数-正态图和残差图。

par(mfrow = c(1, 3)) # making 3 graphs in a row now

y <- rnorm(n)
hist(y)
qqnorm(y); qqline(y)
plot(y); abline(h = 0)

从最后一个绘图中很难分辨出正态性或任何其他东西,因此很难对正态性进行诊断。

总而言之,通常建议不要依赖于正态性检验,而应依靠残差的诊断图。如果没有这些图或您的问题中的实际值,那么很难有人就您的数据在分析或转换方面需要什么提供可靠的建议。为了获得最佳帮助,请提供原始数据。


您好。感谢所有人的建议。最后,我按照建议查看了残差,并将上面的语法与变量一起使用。我的数据并非像我想象的那样严重地不正常,因此我使用了我的参数线性回归时更加自信并且有明显的良心!再次感谢。
rachel S

4

首先,OLS回归不对数据做任何假设,对残差估计的误差做假设。

第二,在我看来,将数据转换为合适的模型是错误的方法。您希望模型适合您的问题,而不是相反。在过去,由于计算机运行缓慢,OLS回归是“镇上唯一的游戏”,但事实不再如此。

第三,我不使用SPSS,所以我在那儿无能为力,但是如果它不提供某种形式的非线性回归,我会感到惊讶。一些可能性是分位数回归,回归树和稳健回归。

第四,我有点担心您的发言:

我真的希望/需要进行回归分析,以查看问卷中的哪些项目可以预测对整体项目的反应(满意度)

如果将各项加总或以某种方式组合以构成整体规模,则回归根本不是正确的方法。您可能需要因子分析。


您建议他可能需要因子分析,但是如果数据不是正态分布的,因子分析也不会受到影响吗?
精简

您可以对不连续的数据进行因子分析。但这是一个单独的讨论-此处已进行了讨论。
彼得·弗洛姆

1
嗨,彼得,我感谢您的专业知识,非常重视您的建议。感谢您抽出宝贵的时间回答。为了澄清,我知道一个人可以对非正态分布的项目进行FA(以及关于残差的正态性的讨论)。我只是好奇地(向有您专业知识的人学习)是否OP会陷入同样的​​困境。但是,我想您已经回答了:)
简化了

1

广义上讲,有两种可能的方法可以解决您的问题:一种从理论上讲是合理的,但在实践中可能无法实现,而另一种则更具启发性。

理论上的最佳方法(不幸的是,您可能实际上将无法使用)是通过还原为直接应用所谓的最大似然方法来计算回归。最大似然估计(实际上是更重要的数学概念)和普通最小二乘法(OLS)回归(通常的方法,对于特定但极为普遍的情况有效,其中观察变量都是独立随机且呈正态分布的)之间的联系)在许多有关统计的教科书中都有描述;我特别喜欢的一个讨论是Glen Cowan的“统计数据分析”第7.1节。如果您的观察变量不是正态分布的,

在这种情况下,由于您似乎实际上并不了解控制观察变量的基础分布(即,唯一可以肯定知道的绝对不是高斯,但实际上不是),因此上述方法将不会为你工作。通常,当OLS失败或返回疯狂结果时,这是因为存在太多异常点。离群点实际上打破了正态分布的观测变量的假设,它们对拟合的权重贡献太大,因为OLS中的点由其与回归曲线的偏差的平方来加权,而对于离群点,该偏差大。在这种情况下,通常的启发式方法是对OLS进行一些调整或修改,从而导致相对于基线OLS方法,离群点的贡献变得不再强调或减少了权重。总的来说,这些通常称为稳健回归。在此处可以找到一个列表,其中包含一些您可能想尝试的特定鲁棒估计技术示例。

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.