Ранее уже писал, что есть некоторое несоответствие SPSS и SAS по расчетам степеней свободы. Не могу точно сказать – какие причины приводят к различиям, но они есть. Для иллюстрации можно рассмотреть доступный датасет, который входит в состав Phoenix WinNonlin RAEBE Template – Example Data EMA 618604 2008 Rev 7.xls
Выполним код SAS для этого датасета:
1 2 3 4 5 6 7 8 9 10 11 12 | proc import datafile="/folders/myfolders/DataEMARev7FR.csv" out=pkdata dbms=csv replace; delimiter=';'; getnames=yes; run; PROC MIXED data=pkdata; CLASSES Seq Subject Period Formulation; MODEL logData = Seq Period Formulation/ DDFM=SATTERTH; RANDOM Formulation/TYPE=FA0(2) SUB=Subject G; REPEATED/GRP=Formulation SUB=Subject; ESTIMATE 'T vs. R' Formulation -1 1/CL ALPHA=0.1; RUN; |
Результат:
SAS:
DF – 208
Diff – 0.1455
SE – 0.04650
После простого вычисления интервалов получается: 107.1040 – 124.8946 (округляем до 4го знака).
Теперь меняем TYPE=FA0(2) -> TYPE=CHS и ничего не меняется – результаты эквивалентны. Можем ли мы надеяться на то, что SPSS даст нам те же результаты?
Выполняем код:
1 2 3 4 5 6 7 8 | MIXED logData BY Period Formulation Sequence Subject /CRITERIA=CIN(90) MXITER(200) MXSTEP(20) SCORING(2) SINGULAR(0.000000000001) HCONVERGE(0, RELATIVE) LCONVERGE(0.0000000000001, RELATIVE) PCONVERGE(0, RELATIVE) /FIXED=Period Formulation Sequence | SSTYPE(3) /METHOD=REML /RANDOM=Formulation | SUBJECT(Subject) COVTYPE(CSH) /REPEATED=Formulation | SUBJECT(Subject*Period) COVTYPE(DIAG) /EMMEANS=TABLES(Formulation) COMPARE REFCAT(FIRST) ADJ(LSD). |
Результат:
SPSS:
DF – 209.53 (округление до 2го знака)
Diff – 0.1455 (округление до 4го знака)
SE – 0.04650 (округление до 5го знака)
Ожидаемо интервалы различаются: 107.1047 – 124.8936
Теперь для Phoenix WinNonlin 8.0 FA0(2):
DF – 207.73 (округление до 2го знака)
Diff – 0.1455
SE – 0.04650
Интервалы: 107.1044 – 124.8939
И теперь для Phoenix WinNonlin 8.0 CSH – Heterogeneous Compound Symmetry:
DF – 75.53 (округление до 2го знака)
Diff – 0.1455
SE – 0.04643
Интервалы: 107.0517 – 124.9536
Проанализируем дополнительный набор с отсутствующими данными:
SAS FA0(2):
Diff -0.07538
SE 0.05573
DF 62.0826348
CI 84.4983 – 101.7831
SAS CHS:
Diff -0.07538
SE 0.05573 (0.05573074)
DF 62.08 (62.0824483)
CI 84.4983 – 101.7831
SPSS:
Diff -0.07538
SE 0.05573 (0.05573074)
DF 62.13978
CI 84.4983 – 101.7831 (тут различия минимальны и нивелированы округлением, но DF – разные)
Phoenix WinNonlin FA0(2):
Diff -0.075382514
SE 0.055730743
DF 62.082447 (!!!)
Phoenix WinNonlin CHS:
Diff -0.073627276
SE 0.046961011
DF 21.428808
CI 85.696293 – 100.71314
Выводы: на референсном датасете в SAS нет различия между FA0(2) и CHS, напротив Phoenix WinNonlin показывает различие не только по степеням свободы, но и по Diff и SE. DF – различается у всех программ по референсному датасету. По датасету с пропущенными данными различие в DF у Phoenix WinNonlin и SAS в 8-м знаке (т.е. они практически эквивалентны, но только на этом датасете). SPSS показывает идентичные Diff и SE, но отличается по DF. Все датасеты вызывают “Estimated G matrix is not positive definite.” в SAS и “Финальная матрица Гессе не является положительно определенной, хотя все критерии сходимости удовлетворены. Процедура MIXED продолжает работу, несмотря на данное предупреждение. Достоверность последующих результатов установить невозможно.”- SPSS. Предупреждение SPSS выглядит более строго. Phoenix вообще никак не реагирует. На датасетах с положительным гессианом таких особенностей нет.
И что? – Нет ответа. Вероятно стоит учесть, что такие различия есть. И что CHS Phoenix != CHS SAS.
Файлы:
Example Data EMA 618604 2008 Rev 7.xls
SPSS.phxproj – Phonix WinNonlin проект с импортированными дтасетами
VAR24Missing.csv
var24Missing.sav