Q&A

[re] GLM 에러 – Denominator of F-test is zero

분류: QnA 자료실 글쓴이: StatEdu 날짜: 2002-12-24 12:21

여러가지 방법을 이용하여 계산을 해 보았습니다. 그 결과가 첨부 파일입니다.
내용을 보면 독립변수(C1)를 수준이 3인 경우로 잡아주었고, C2~C9까지를 종속변수로 만들었습니다. 그리고, F 값이 높게(F=499.20) 나오게 하기 위해 인위적으로 값을 만들었습니다. 또한 우리의 의문점인 분모가 0이 나오게 되는 경우를 알아보기 위해

                     C2 : 0.0123
                     C3 : 0.00123
                     C4 : 0.000123

과 같은 식으로 해서 값을 한단계마다 1/10 로 잡아주었습니다. 이렇게 해주면 MS 값이 점점 작아지기 때문이죠.

그런다음 3가지의 분석을 해봤습니다. One-Way ANOVA, GLM(fixed), GLM(random) 이 바로 그 3가지 입니다. 즉, 첫번째는 단순한 ANOVA를 두번째는 독립변수를 모수요인으로 한 GLM, 세번째는 독립변수를 변량모형으로 한 GLM이죠.
위와 같이 한 이유는 각 분석 기법마다 F 값을 구하는 방법이 약간의 차이를 보입니다. 사실 독립변수가 1개만 있을 경우에는 그 차이는 없이 결과는 같게 나옵니다. 그래서 모든 경우의 F 값이 499.20으로 동일하게 나오는 것이죠. 그렇지만, 계산 중간식이 차이가 있어서 뒤의 분석으로 갈 수록 소수점 아래의 자리수가 좀 더 필요합니다.

그 결과를 설명하면

1. One-Way ANOVA
이 경우 모든 경우의 F 값이 출력이 되었습니다.
특히 눈 여겨 볼 부분은 C3에서 부터 MSE의 값은 0.0000000 으로 소수점 7자라까지 0 입니다. 그리고 C9까지 모든 MSE 값은 0.0000000 으로 역시 7자리 까지 0이죠. 그런데, 한 단계를 지날때마다 소수점 2자리씩이 줄어듭니다.
결국 C9 의 MSE 값은 2.5E-20 으로 소수점 20 자리까지 계산이 된다는 결론이 나옵니다.
나중에 C10, C11 까지 만들었는데 그 때에도 값이 출력이 되더군요.

2. GLM(random)
모수모형의 GLM에서는 C5 까지 출력이 되었습니다. 즉, 소수점 12 자리 까지는 계산이 되었다는 것이죠.

3. GLM(fixed)
이 경우가 상당히 재미있는 경우로서, C2 만이 출력되고 C3 에서 부터 출력이 되지 않습니다. 즉, 소수점 7~8자리 까지 밖에 계산이 안된다는 것이죠.

위의 결과로 일단 얻을 수 있는 결론은 Minitab의 GLM에서는 소수점 아래의 자리수가 더 짧다는 것입니다. 변량인자가 포함될 경우에는 더 심한 것은 당연한 결과죠.

그러므로 님의 결과에서 그런 결과가 나온 것은 소수점 아래의 값이 많아서 minitab에서 분모를 0 으로 처리한 것으로 보입니다.

물론 위의 결과는 제가 임의로 만들어서 해 본 경우이고, 독립변수가 1개인 경우만 실험을 해 봤습니다. 독립변수가 2개 이상이면 계산 결과가 더 복잡해지기 때문에 1 개인 경우보다 소수점 아래의 자리수는 더 짧아질 것으로 생각됩니다. 그러나, 이것은 어디까지나 제가 실험한 결과에 의한 것입니다.

사실 어제 minitab 본사에 질문을 올려놓았습니다. 답변이 올지는 모르지만, 공식적인 결과를 기다려보고 결과나 나오면 그때 다시 글 올리겠습니다.

... 언제나 최선을 다하는 StatEdu가 되길 빌며 ...

>항상 빠르고 성의있는 답변에 너무나 감사드립니다.
>
>한가지 더 의문나는 것이 있어서 말씀드립니다.
>
>답변에서 에러메세지의 이유가 변량모수(Random factor)로 잡아주었기 때문에
>일어난 현상일지도 모른다고 하셨는데....
>
>아래처럼 고정인자(way_1)에 대해서도 동일한 에러 메세지가 나왔습니다.
>
>이러한 경우라면 Random factor에 따른 이유라기에는 뭔가 찜찜한 점이 있는것이
>아닌가 하는 생각이 듭니다.
>
>저도 이것을 고민하고는 있지만..... 워낙... 기본이 엉망인지라.....
>
>혹시 계산기의 오류로서 예를 들자면 분모의 값이 1.9E-20같은 값이(극단적으로 만든 예 입니다.)
>소수점자리수가 엄청난(정말 0에 가까운...) 값이 나와서 그런것은 아닐까... 합니다.
>혹시 minitab이 소수점 9자리까지만 계산한다면... 이런 값들은 그냥 0이 되어버리기
>때문에 발생되는 오류가 아닌가... 하는 생각도 어설프게 하고 있습니다.
>(근데 분모값이 이렇게 나올 수도 있느냐 하는 또 다른 의문이 생기기는 하지만....)
>
>
>
>General Linear Model: Germination_1 versus way_1, layer_1, month_1
>
>
>Factor     Type Levels Values
>way_1     fixed      2 1 2
>layer_1  random      3 1 2 3
>month_1  random      7 1 2 3 4 5 6 7
>
>Analysis of Variance for Germinat, using Adjusted SS for Tests
>
>Source                  DF     Seq SS     Adj SS     Adj MS       F      P
>way_1                    1     49.464     49.464     49.464      **
>layer_1                  2     16.324     16.324      8.162    0.99  0.466 x
>month_1                  6    942.455    942.455    157.076   39.23  0.043 x
>way_1*layer_1            2     10.012     10.012      5.006    0.86  0.446
>way_1*month_1            6      4.446      4.446      0.741    0.13  0.990
>layer_1*month_1         12    108.659    108.659      9.055    1.56  0.225
>way_1*layer_1*month_1   12     69.499     69.499      5.792    2.10  0.019
>Error                  168    463.182    463.182      2.757
>Total                  209   1664.041  
>
>x Not an exact F-test.
>
>** Denominator of F-test is zero.
>
>Unusual Observations for Germinat
>
>Obs  Germinat       Fit      SE Fit  Residual   St Resid
> 35   85.6500   89.7940      0.7426   -4.1440     -2.79R
>101   94.3300   91.2000      0.7426    3.1300      2.11R
>102   95.0000   91.2000      0.7426    3.8000      2.56R
>103   85.6700   91.2000      0.7426   -5.5300     -3.72R
>110   93.5000   96.5660      0.7426   -3.0660     -2.06R
>135   90.0000   93.0660      0.7426   -3.0660     -2.06R
>137   81.3300   84.8350      0.7426   -3.5050     -2.36R
>165   92.0000   95.4680      0.7426   -3.4680     -2.34R
>173   87.0000   90.8000      0.7426   -3.8000     -2.56R
>174   95.0000   90.8000      0.7426    4.2000      2.83R
>
>R denotes an observation with a large standardized residual.
>
>
>역시나... 통계의 길도 멀고도 험한것 같습니다.....
>
>
>
>
>>아래와 같이 나오는 이유는 layer_1을 변량모수(Random factor)로 잡아주었기 때문에 일어난 현상으로 보입니다. 그래서 관련 서적을 찾아보았습니다. F 값을 구하는 방법이 모수모형, 혼합모형 그리고 반복의 유무에 따라 다르기 때문이죠. 그런데, 그 방법으로 대략 계산을 했는데 값이 나와야 되는데도 불구하고 미니탭의 계산 결과는 나오지를 않고 있네요.
>>우선 GLM 모형에서 분모에 들어가는 값은 MS 값입니다. 만약 독립변수들이 모두 모수인자(Fixed factor)라면 분모는 전부 MSE 값입니다. 이 경우라면 1.534가 되는 것이죠.
>>그런데 minitab에서 이런 현상이 일어난 이유는 한번 연구해 보고 찾아봐야 할 것 같네요. 심하면 minitab의 알고리즘까지 봐야할텐데, 미니탭은 이런 류의 자료를 오픈하지 않아서 빨리 찾을 수 있을지 모르겠네요.
>>연구해 보고 답이 나오면 그때에 다시 글 올리도록 하겠습니다. 답을 드리지 못해서 죄송합니다.
>>
>>... 언제나 최선을 다하는 StatEdu가 되길 빌며 ...
>>
>>
>>>아래는 GLM ANOVA 결과입니다.
>>>두번째 layer_1 항목에 대해서 ** Denominator of F-test is zero라는 메세지가 나타나는
>>>이유가 궁금합니다.
>>>
>>>쉽게 생각하면 분모가 0이란 말은 잔차평균제곱합이 0이라는 뜻인가요?
>>>이런 경우도 있는 건가요?
>>>아님 제가 잘못 분석한건가요?
>>>
>>>
>>>
>>>General Linear Model: crack_1 versus way_1, layer_1, month_1
>>>
>>>
>>>Factor     Type     Levels  Values
>>>way_1     fixed         2      1 2
>>>layer_1    random     3      1 2 3
>>>month_1  random     7      1 2 3 4 5 6 7
>>>
>>>Analysis of Variance for crack_1, using Adjusted SS for Tests
>>>
>>>Source                            DF     Seq SS     Adj SS     Adj MS      F      P
>>>===========================================================================
>>>way_1                              1       96.954       96.954      96.954   17.25   0.012 x
>>>layer_1                             2       18.772       18.772        9.386      **
>>>month_1                           6      132.367     132.367      22.061     3.54   0.086 x
>>>way_1*layer_1                  2         0.208        0.208        0.104     0.10   0.905
>>>way_1*month_1                 6       39.306      39.306        6.551     6.34   0.003
>>>layer_1*month_1               12        8.489        8.489        0.707     0.68   0.739
>>>way_1*layer_1*month_1    12       12.404      12.404        1.034     0.67   0.775
>>>Error                             168      257.657     257.657       1.534
>>>---------------------------------------------------------------------------
>>>Total                             209      566.157  
>>>
>>>x Not an exact F-test.
>>>
>>>** Denominator of F-test is zero.
>>>
>>>Unusual Observations for crack_1
>>>
>>>Obs   crack_1       Fit      SE Fit  Residual   St Resid
>>> 44   12.6000   15.3200      0.5538   -2.7200     -2.46R
>>> 55   14.0000   17.4180      0.5538   -3.4180     -3.09R
>>> 69   14.4000   16.7400      0.5538   -2.3400     -2.11R
>>>130   14.0000   16.3200      0.5538   -2.3200     -2.09R
>>>135   13.1100   15.7820      0.5538   -2.6720     -2.41R
>>>167   18.2900   15.9060      0.5538    2.3840      2.15R
>>>201   17.4000   14.6400      0.5538    2.7600      2.49R
>>>207   17.0000   14.7600      0.5538    2.2400      2.02R
>>
>

Attachments

  • Denominator.MPJ - 湲곗〈 寃쎈줈: ./files/attach/binaries/78415/829/011/ce348f230fde331f877a54678aa32612

Legacy document_srl: 11829 / Legacy URL: http://www.statedu.com/QnA/11829

댓글

댓글은 로그인한 회원만 작성할 수 있습니다.