Означает ли «корреляция» также наклон в регрессионном анализе?


14

Я читаю газету, и автор пишет:

Влияние A, B, C на Y изучалось с помощью множественного регрессионного анализа. A, B, C были введены в уравнение регрессии с Y в качестве зависимой переменной. Дисперсионный анализ представлен в Таблице 3. Эффект B на Y был значительным, причем B коррелировал .27 с Y.

Английский не мой родной язык, и я действительно запутался здесь.

Сначала он сказал, что проведет регрессионный анализ, а затем показал нам дисперсионный анализ. Почему?

А потом он написал о коэффициенте корреляции, разве это не из корреляционного анализа? Или это слово также может быть использовано для описания наклона регрессии?

Ответы:


17

Сначала он сказал, что проведет регрессионный анализ, а затем показал нам дисперсионный анализ. Почему?

Дисперсионный анализ (ANOVA) - это просто метод сравнения дисперсии, объясняемой моделью, и дисперсии, не объясняемой моделью. Поскольку регрессионные модели имеют как объясненный, так и необъяснимый компонент, естественно, что ANOVA может быть применен к ним. Во многих программных пакетах результаты ANOVA обычно сообщаются с линейной регрессией. Регрессия также очень универсальная техника. Фактически, и t-тест и ANOVA могут быть выражены в форме регрессии; это всего лишь частный случай регрессии.

Например, вот пример выходной регрессии. Результат - количество миль на галлон некоторых автомобилей, и независимой переменной является то, была ли машина отечественной или иностранной:

      Source |       SS       df       MS              Number of obs =      74
-------------+------------------------------           F(  1,    72) =   13.18
       Model |  378.153515     1  378.153515           Prob > F      =  0.0005
    Residual |  2065.30594    72  28.6848048           R-squared     =  0.1548
-------------+------------------------------           Adj R-squared =  0.1430
       Total |  2443.45946    73  33.4720474           Root MSE      =  5.3558

------------------------------------------------------------------------------
         mpg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
   1.foreign |   4.945804   1.362162     3.63   0.001     2.230384    7.661225
       _cons |   19.82692   .7427186    26.70   0.000     18.34634    21.30751
------------------------------------------------------------------------------

Вы можете увидеть ANOVA в левом верхнем углу. Общая F-статистика составляет 13,18, значение p равно 0,0005, что указывает на то, что модель является прогнозирующей. И вот результат ANOVA:

                       Number of obs =      74     R-squared     =  0.1548
                       Root MSE      = 5.35582     Adj R-squared =  0.1430

              Source |  Partial SS    df       MS           F     Prob > F
          -----------+----------------------------------------------------
               Model |  378.153515     1  378.153515      13.18     0.0005
                     |
             foreign |  378.153515     1  378.153515      13.18     0.0005
                     |
            Residual |  2065.30594    72  28.6848048   
          -----------+----------------------------------------------------
               Total |  2443.45946    73  33.4720474   

Обратите внимание, что вы можете восстановить ту же F-статистику и p-значение.


А потом он написал о коэффициенте корреляции, разве это не из корреляционного анализа? Или это слово также может быть использовано для описания наклона регрессии?

Предполагая, что анализ связан с использованием только B и Y, технически я не согласен с выбором слова. В большинстве случаев наклон и коэффициент корреляции не могут использоваться взаимозаменяемо. В одном особом случае эти два одинаковы, то есть когда стандартизируются как независимые, так и зависимые переменные (то есть в единице z-показателя).

Например, давайте сопоставим мили за галлон и цену автомобиля:

             |    price      mpg
-------------+------------------
       price |   1.0000
         mpg |  -0.4686   1.0000

И вот тот же тест, используя стандартизированные переменные, вы можете увидеть, что коэффициент корреляции остается неизменным:

             |  sdprice    sdmpg
-------------+------------------
     sdprice |   1.0000
       sdmpg |  -0.4686   1.0000

Теперь вот две модели регрессии, использующие исходные переменные:

. reg mpg price

      Source |       SS       df       MS              Number of obs =      74
-------------+------------------------------           F(  1,    72) =   20.26
       Model |  536.541807     1  536.541807           Prob > F      =  0.0000
    Residual |  1906.91765    72  26.4849674           R-squared     =  0.2196
-------------+------------------------------           Adj R-squared =  0.2087
       Total |  2443.45946    73  33.4720474           Root MSE      =  5.1464

------------------------------------------------------------------------------
         mpg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
       price |  -.0009192   .0002042    -4.50   0.000    -.0013263   -.0005121
       _cons |   26.96417   1.393952    19.34   0.000     24.18538    29.74297
------------------------------------------------------------------------------

... а вот тот со стандартизованными переменными:

. reg sdmpg sdprice

      Source |       SS       df       MS              Number of obs =      74
-------------+------------------------------           F(  1,    72) =   20.26
       Model |  16.0295482     1  16.0295482           Prob > F      =  0.0000
    Residual |  56.9704514    72  .791256269           R-squared     =  0.2196
-------------+------------------------------           Adj R-squared =  0.2087
       Total |  72.9999996    73  .999999994           Root MSE      =  .88953

------------------------------------------------------------------------------
       sdmpg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
     sdprice |  -.4685967   .1041111    -4.50   0.000    -.6761384   -.2610549
       _cons |  -7.22e-09   .1034053    -0.00   1.000    -.2061347    .2061347
------------------------------------------------------------------------------

Как вы можете видеть, наклон исходных переменных равен -0,0009192, а коэффициент со стандартизованными переменными равен -0,4686, что также является коэффициентом корреляции.

Таким образом, если бы A, B, C и Y не были стандартизированы, я бы не согласился с «корреляцией» статьи. Вместо этого я бы предпочел, чтобы увеличение B на одну единицу ассоциировалось со средним значением Y на 0,27 выше.

В более сложной ситуации, когда задействовано более одной независимой переменной, описанное выше явление больше не будет истинным.


7

Сначала он сказал, что проведет регрессионный анализ, а затем показал нам дисперсионный анализ. Почему?

Таблица анализа отклонений является сводкой части информации, которую вы можете получить из регрессии. (То, что вы можете рассматривать как анализ отклонений, является особым случаем регрессии. В любом случае вы можете разделить суммы квадратов на компоненты, которые можно использовать для проверки различных гипотез, и это называется анализом таблицы отклонений.)

А потом он написал о коэффициенте корреляции, разве это не из корреляционного анализа? Или это слово также может быть использовано для описания наклона регрессии?

Корреляция - это не то же самое, что наклон регрессии, но оба взаимосвязаны. Однако, если они не оставили слово (или, возможно, несколько слов), попарная корреляция B с Y не говорит вам напрямую о значении наклона в множественной регрессии. В простой регрессии эти два отношения напрямую связаны, и такие отношения действительно имеют место. При множественной регрессии частичные корреляции соотносятся с уклонами соответствующим образом.


4

Я даю коды в R только для примера, вы можете просто увидеть ответы, если у вас нет опыта работы с R. Я просто хочу привести несколько примеров.

корреляция против регрессии

Простая линейная корреляция и регрессия с одним Y и одним X:

Модель:

y = a + betaX + error (residual) 

Допустим, у нас есть только две переменные:

X = c(4,5,8,6,12,15)
Y = c(3,6,9,8,6, 18)
plot(X,Y, pch = 19)

На диаграмме рассеяния чем ближе точки лежат к прямой линии, тем сильнее линейная связь между двумя переменными.

введите описание изображения здесь

Давайте посмотрим линейную корреляцию.

cor(X,Y)
0.7828747

Теперь линейная регрессия и отступ R значения в квадрате .

    reg1 <- lm(Y~X)
   summary(reg1)$r.squared
     0.6128929

Таким образом, коэффициентами модели являются:

reg1$coefficients
(Intercept)           X 
  2.2535971   0.7877698

Бета для X составляет 0,7877698. Таким образом, наша модель будет:

  Y = 2.2535971 + 0.7877698 * X 

Квадратный корень значения R-квадрата в регрессии такой же, как rв линейной регрессии.

sqrt(summary(reg1)$r.squared)
[1] 0.7828747

Давайте посмотрим, как влияет масштаб на наклон регрессии и корреляцию, используя тот же самый пример и умножим его Xна постоянное число 12.

    X = c(4,5,8,6,12,15)
    Y = c(3,6,9,8,6, 18)
    X12 <- X*12

    cor(X12,Y)
   [1] 0.7828747

Корреляции остаются неизменными , как это делают R-квадрат .

    reg12 <- lm(Y~X12)
    summary(reg12)$r.squared
     [1] 0.6128929
     reg12$coefficients
(Intercept)         X12 
 0.53571429  0.07797619 

Вы можете видеть измененные коэффициенты регрессии, но не R-квадрат. Теперь другой эксперимент позволяет добавить константу Xи посмотреть, как это повлияет.

    X = c(4,5,8,6,12,15)
    Y = c(3,6,9,8,6, 18)
    X5 <- X+5

    cor(X5,Y)
   [1] 0.7828747

Корреляция до сих пор не изменилась после добавления 5. Посмотрим, как это повлияет на коэффициенты регрессии.

        reg5 <- lm(Y~X5)
        summary(reg5)$r.squared
         [1] 0.6128929
         reg5$coefficients
(Intercept)          X5 
 -4.1428571   0.9357143

R-квадрат и корреляция не имеет эффекта масштаба , но перехватывать и наклон делать. Таким образом, наклон не совпадает с коэффициентом корреляции (если переменные не стандартизированы со средним 0 и дисперсией 1).

Что такое ANOVA и почему мы делаем ANOVA?

ANOVA - это метод, в котором мы сравниваем отклонения для принятия решений. Переменная ответа (называемая Y) является количественной переменной, в то время как Xможет быть количественной или качественной (фактор с различными уровнями). Оба Xи Yмогут быть один или несколько в количестве. Обычно мы говорим ANOVA для качественных переменных, ANOVA в контексте регрессии менее обсуждается. Может быть, это может быть причиной вашего замешательства. Нулевая гипотеза в качественной переменной (факторы, например, группы) состоит в том, что среднее для групп не отличается / не равно, в то время как в регрессионном анализе мы проверяем, значительно ли наклон линии отличается от 0.

Давайте рассмотрим пример, в котором мы можем выполнить как регрессионный анализ, так и качественный фактор ANOVA, поскольку X и Y являются количественными, но мы можем рассматривать X как фактор.

    X1 <- rep(1:5, each = 5)
    Y1 <- c(12,14,18,12,14,  21,22,23,24,18,  25,23,20,25,26, 29,29,28,30,25, 29,30,32,28,27)
   myd <- data.frame (X1,Y1)

Данные выглядят следующим образом.

   X1 Y1
1   1 12
2   1 14
3   1 18
4   1 12
5   1 14
6   2 21
7   2 22
8   2 23
9   2 24
10  2 18
11  3 25
12  3 23
13  3 20
14  3 25
15  3 26
16  4 29
17  4 29
18  4 28
19  4 30
20  4 25
21  5 29
22  5 30
23  5 32
24  5 28
25  5 27

Теперь мы делаем регрессию и ANOVA. Первая регрессия:

 reg <- lm(Y1~X1, data=myd)
 anova(reg)

Analysis of Variance Table

Response: Y1
          Df Sum Sq Mean Sq F value    Pr(>F)    
X1         1 684.50  684.50   101.4 6.703e-10 ***
Residuals 23 155.26    6.75                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

reg$coefficients             
(Intercept)          X1 
      12.26        3.70 

Теперь обычное значение ANOVA (среднее значение ANOVA для фактора / качественной переменной) путем преобразования X1 в коэффициент.

myd$X1f <- as.factor (myd$X1)
     regf <- lm(Y1~X1f, data=myd)
     anova(regf)
Analysis of Variance Table

Response: Y1
          Df Sum Sq Mean Sq F value    Pr(>F)    
X1f        4 742.16  185.54   38.02 4.424e-09 ***
Residuals 20  97.60    4.88                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Вы можете видеть измененный X1f Df, который равен 4 вместо 1 в приведенном выше случае.

В отличие от ANOVA для качественных переменных, в контексте количественных переменных, где мы проводим регрессионный анализ - дисперсионный анализ (ANOVA) состоит из расчетов, которые предоставляют информацию об уровнях изменчивости в рамках регрессионной модели и образуют основу для тестов значимости.

В основном ANOVA проверяет нулевую гипотезу бета = 0 (с альтернативной гипотезой бета не равна 0). Здесь мы делаем F-тест, отношение изменчивости которого объясняется моделью и ошибкой (остаточная дисперсия). Дисперсия модели исходит из суммы, которая объясняется линией, которую вы подгоняете, а остаток - из значения, которое не объясняется моделью. Значительный F означает, что бета-значение не равно нулю, означает, что существует значительная связь между двумя переменными.

 > anova(reg1)
    Analysis of Variance Table

    Response: Y
              Df Sum Sq Mean Sq F value Pr(>F)  
    X          1 81.719  81.719  6.3331 0.0656 .
    Residuals  4 51.614  12.904                 
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Здесь мы можем видеть высокую корреляцию или R-квадрат, но все еще незначительный результат. Иногда вы можете получить результат, в котором низкая корреляция все еще значима. Причиной несущественной связи в этом случае является то, что у нас недостаточно данных (n = 6, остаточный df = 4), поэтому следует рассматривать F как распределение F с помощью числителя 1 df против 4 denomerator df. Так что в этом случае мы не могли исключить, что наклон не равен 0.

Давайте посмотрим на другой пример:

 X = c(4,5,8,6,2,  5,6,4,2,3,   8,2,5,6,3,  8,9,3,5,10)
    Y = c(3,6,9,8,6,  8,6,8,10,5,  3,3,2,4,3,  11,12,4,2,14)
    reg3 <- lm(Y~X)
    anova(reg3)


     Analysis of Variance Table

    Response: Y
              Df  Sum Sq Mean Sq F value  Pr(>F)  
    X          1  69.009  69.009   7.414 0.01396 *
    Residuals 18 167.541   9.308                  
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Значение R-квадрата для этих новых данных:

 summary(reg3)$r.squared
 [1] 0.2917296
cor(X,Y)
[1] 0.54012

Хотя корреляция ниже, чем в предыдущем случае, мы получили значительный уклон. Больше данных увеличивает df и предоставляет достаточно информации, чтобы мы могли исключить нулевую гипотезу о том, что наклон не равен нулю.

Давайте возьмем другой пример, где есть отрицательная корреляция:

 X1 = c(4,5,8,6,12,15)
    Y1 = c(18,16,2,4,2, 8)
   # correlation 
    cor(X1,Y1)
 -0.5266847
   # r-square using regression
    reg2 <- lm(Y1~X1)
   summary(reg2)$r.squared
 0.2773967
  sqrt(summary(reg2)$r.squared)
[1] 0.5266847

Поскольку значения были в квадрате, квадратный корень не предоставит информацию о положительных или отрицательных отношениях здесь. Но величина такая же.

Случай множественной регрессии:

Множественная линейная регрессия пытается смоделировать взаимосвязь между двумя или более объясняющими переменными и переменной отклика путем подгонки линейного уравнения к наблюдаемым данным. Приведенное выше обсуждение может быть распространено на случай множественной регрессии. В этом случае у нас есть несколько бета в срок:

y = a + beta1X1 + beta2X2 + beta2X3 + ................+ betapXp + error 

Example: 
    X1 = c(4,5,8,6,2,  5,6,4,2,3,   8,2,5,6,3,  8,9,3,5,10)
    X2 = c(14,15,8,16,2,  15,3,2,4,7,   9,12,5,6,3,  12,19,13,15,20)
    Y = c(3,6,9,8,6,  8,6,8,10,5,  3,3,2,4,3,  11,12,4,2,14)
    reg4 <- lm(Y~X1+X2)

Давайте посмотрим на коэффициенты модели:

reg4$coefficients

(Intercept)          X1          X2 
 2.04055116  0.72169350  0.05566427

Таким образом, ваша модель множественной линейной регрессии будет:

Y = 2.04055116 + 0.72169350 * X1 + 0.05566427* X2 

Теперь давайте проверим, больше ли бета для X1 и X2.

 anova(reg4)
    Analysis of Variance Table

    Response: Y
              Df  Sum Sq Mean Sq F value  Pr(>F)  
    X1         1  69.009  69.009  7.0655 0.01656 *
    X2         1   1.504   1.504  0.1540 0.69965  
    Residuals 17 166.038   9.767                  
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Здесь мы говорим, что наклон X1 больше 0, в то время как мы не можем исключить, что наклон X2 больше 0.

Обратите внимание, что наклон не является корреляцией между X1 и Y или X2 и Y.

> cor(Y, X1)
[1] 0.54012
> cor(Y,X2)
[1] 0.3361571

В ситуации с несколькими вариациями (когда переменная больше двух) Частичная корреляция входит в игру. Частичная корреляция - это корреляция двух переменных с одновременным контролем третьей или более других переменных.

source("http://www.yilab.gatech.edu/pcor.R")
pcor.test(X1, Y,X2)
   estimate    p.value statistic  n gn  Method            Use
1 0.4567979 0.03424027  2.117231 20  1 Pearson Var-Cov matrix
pcor.test(X2, Y,X1)
    estimate   p.value statistic  n gn  Method            Use
1 0.09473812 0.6947774 0.3923801 20  1 Pearson Var-Cov matrix

1

Дисперсионный анализ (ANOVA) и регрессия на самом деле очень похожи (некоторые скажут, что это одно и то же).

В Анализ отклонений, как правило, у вас есть несколько категорий (групп) и количественная переменная ответа. Вы вычисляете количество общей ошибки, количество ошибок в группе и количество ошибок между группами.

В регрессии у вас больше не обязательно есть группы, но вы все равно можете разделить количество ошибок на общую ошибку, количество ошибок, объясняемых вашей моделью регрессии, и ошибку, необъяснимую вашей моделью регрессии. Модели регрессии часто отображаются с использованием таблиц ANOVA, и это простой способ увидеть, насколько вариативность объясняется вашей моделью.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.