我正在使用软件R
和XLStat
。我进行了单向ANOVA
(我的分类变量是3模态(1,2,3),我的响应变量是按比例1-10定量的)。
我在R和XLStat上进行了这个ANOVA,F fisher的输出,p值,系数估计,t值,std误差......完全相同。
然而,XLstat提供了额外的输出:标准化系数(称为β系数)。首先,我很惊讶,因为我认为我们不能计算分类变量的β系数,根据我读过的参考书目,它没有任何意义。
无论如何,我试图用R找到这些系数,这要归功于我找到的独特公式:beta = estimate * sd(x)/sd(y)
。 sd(x)是分类变量的标准偏差(自动变换为带R的数值变量,为了计算sd(x),似乎是逻辑的),sd(y)是我的响应变量的标准偏差。
我用R获得的第一个beta与XLstat中的相同,但不是第二个和第三个。鉴于第一个与R和XLStat相同,我认为Xlstat也转换了数字变量中的分类变量(这是无意义的,但这不是问题)。 此外,我在Statistica上进行了anova,以查看XLStat是否有任何错误,但其β系数的输出与Xlstat相同......
所以,我的问题是这个问题:以单向Anova获得β系数的公式是什么?
然后,我想问一下这些β系数对分类变量的相关性。根据我读过的想法和出版物,它没有任何意义......
R和Xlstat中的ps对比是sum(ai)= 0。对于β系数,XLStat删除截距。我想这个事实可能很重要,但我不知道怎么回事。
答案 0 :(得分:1)
用于从ANOVA的度量系数获得β系数的公式与线性回归的公式相同。系数没有合理的解释(对于分类变量),但标准化系数可用于比较IV与不同指标的相对影响。
在R中,使用scale()在拟合模型之前将数据转换为z分数,或者使用lm.beta()而不是lm()。
目前尚不清楚为什么你会用XLStat获得不同的beta系数,但如果它不是错误,它可能与自由度有关。 This example将R中的lm.beta()函数与SAS进行比较,得到相同的系数。