【问题标题】:Regression analysis or Anova?回归分析还是方差分析?
【发布时间】:2012-05-23 06:41:33
【问题描述】:

我希望能做到最清楚。 假设我有一个包含 10 个变量的数据集,其中 4 个变量代表我称为 Y 的某种现象。 其他 6 个对我来说代表了另一种我称之为 X 的现象。

每个变量 (10) 都包含 37 个单位。这些单位只是我的分析(调查)的受访者。 由于所有问题均基于李克特量表,因此它们是定性变量。所有这些的比例都是从 0 到 7,但是缺少答案的地方有“-1”和“-2”值。因此,比例实际上是从 -2 到 7。

我想要做的是计算我的 Y(在这种情况下包含 4 个变量,每个变量有 37 个答案)和我的 X(包含 6 个变量和相同数量的受访者)之间的回归。我知道对于定性分析我应该使用 Anova 而不是回归,尽管我在某处读到它甚至是可能的 进行回归。

到目前为止,我一直在尝试这样做:

> apply(Y, 1, function(Y) mean(Y[Y>0])) #calculate the average per rows (respondents) without considering the negative values

> Y.reg<- c(apply(Y, 1, function(Y) mean(Y[Y>0]))) #create the vector Y, thus it results like 1 variable with 37 numbers

> apply(X, 1, function(X) mean(X[X>0]))

> X.reg<- c(apply(X, 1, function(X) mean(X[X>0]))) #create the vector X, thus it results like 1 variable with 37 numbers

> reg1<- lm(Y.reg~ X.reg) #make the first regression
> summary(reg1) #see the results
Call:
lm(formula = Y.reg ~ X.reg)

Residuals:
     Min         1Q       Median      3Q       Max 
-2.26183 -0.49434 -0.02658  0.37260  2.08899 

Coefficients:
               Estimate  Std. Error   t value   Pr(>|t|)    
(Intercept)     4.2577     0.4986     8.539    4.46e-10 ***
 X.reg          0.1008     0.1282     0.786    0.437    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 0.7827 on 35 degrees of freedom
Multiple R-squared: 0.01736,    Adjusted R-squared: -0.01072 
F-statistic: 0.6182 on 1 and 35 DF,  p-value: 0.437 

但是正如你所看到的,虽然我不使用由 4 个变量组成的 Y 和由 6 个组成的 X,而且我也不考虑负值,但我的 R^2 得分非常低。

如果我用 anova 代替,我会遇到这个问题:

> Ymatrix<- as.matrix(Y)
> Xmatrix<- as.matrix(X) #where both this Y and X are in their first form, thus composed by more variables (4 and 6) and with negative values as well.

> Errore in UseMethod("anova") : 
  no applicable method for 'anova' applied to an object of class "c('matrix', 'integer', 'numeric')"

说实话,前几天我成功使用了anova,但不幸的是我不记得如何并且我没有将命令保存在任何地方。

我想知道的是:

  • 首先,我处理问题的方式有误吗?
  • 您如何看待回归输出?
  • 最后,如何制作方差分析?如果我必须这样做。

【问题讨论】:

    标签: r statistics regression lm anova


    【解决方案1】:

    如果您的响应 (Y) 和预测变量 (x) 是数字尺度,则可以使用回归。 如果您的响应 (Y) 是数字尺度,而预测变量 (x) 是分类尺度,则可以使用 ANOVA。

    建议:

    在使用回归方法之前,您必须使用有效性和可靠性测试来了解答案(指标)对于响应和预测变量是否有效和可靠。

    【讨论】:

      【解决方案2】:

      我不同意 Denny 的回答。无论您拥有何种数据类型,您都可以使用任何一种方法。如果您有分类数据,则可以使用虚拟编码将其表示为数字。例如,给定具有 3 个选项的特征 x,例如 1、2 和 3,您可以通过创建 3 个新的附加变量 x1、x2 和 x3 将其编码为数字。如果 x 为 1,则 x1 为 1,x2 为 0,x3 为 0。如果 x 缺失,则三个新的 x 值都将为零。

      在您的情况下,我建议您首先尝试回归,因为您拥有大量功能并且它往往是直截了当的。随着特征数量的增加,方差分析会变得复杂。假设您的数据满足这两种技术所需的假设,两者都应该有效。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-08-17
        • 1970-01-01
        • 2018-12-06
        • 2020-09-24
        • 2019-10-09
        • 2012-07-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多