calculating ordinal regression models in sas and s-plus

24
Calculating Ordinal Regression Models in SAS and S-Plus Ralf Bender Institute of Epidemiology and Medical Statistics School of Public Health University of Bielefeld Germany Axel Benner Biostatistics German Cancer Research Center Heidelberg Germany Summary Although a number of regression models for ordinal responses have been proposed, these models are not widely known and applied in epidemiology and biomedical research. Overviews of these models are either highly technical or consider only a small part of this class of models so that it is difficult to understand the features of the models and to recognize important relations between them. In this paper we give an overview of logistic regression models for ordinal data based upon cumulative and condi- tional probabilities. We show how the most popular ordinal regression models, namely the proportional odds model and the continuation ratio model, are embedded in the framework of generalized linear models. We describe the characteristics and interpretations of these models and show how the calcula- tions can be performed by means of SAS and S-Plus. We illustrate and compare the methods by apply- ing them to data of a study investigating the effect of several risk factors on diabetic retinopathy. A special aspect is the violation of the usual assumption of equal slopes which makes the correct applica- tion of standard models impossible. We show how to use extensions of the standard models to work adequately with this situation. Key words: Logistic Regression; Ordinal Data; Proportional Odds Model; Conti- nuation Ratio Model; Equal Slopes Assumption; SAS; S-Plus; Dia- betic Retinopathy. Zusammenfassung Obwohl verschiedene Regressionsmodelle fu Èr ordinale Zielvariablen existieren, sind diese Modelle in der epidemiologischen und biomedizinischen Forschung noch nicht sehr verbreitet. Ûbersichtsarbeiten hierzu sind entweder sehr technisch ausgerichtet oder beinhalten nur einen kleinen Teil dieser Modelle, so daû es schwierig ist deren Eigenschaften und Beziehungen untereinander zu verstehen. In dieser Arbeit geben wir einen Ûberblick u Èber logistische Regressionsmodelle fu Èr ordinale Daten, die auf ku- Biometrical Journal 42 2000) 6, 677±699

Upload: haque

Post on 28-Jan-2017

235 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Calculating Ordinal Regression Models in SAS and S-Plus

���������� ������ �������� ������ �� ��� ��� ������

���� �����

��������� � ���� ������ ��� ������� ���������������� � ������ ���������������� � ����������� ���

��� �����

���������������� �� ������ �������� ������������������� ���

�������

������� � �� ��� � ���������� ����� �� ������� ��������� ���� ���� ��������! ����� ����� ������ "����� #��"� ��� ������� �� ����� ������ ��� ��� ������ ��������$ %������"� � ����� �������� ������ ������ ��������� �� �������� ���� � � ��� ���� � ���� ����� � ����� �� ���� �� �� ������� ������������ ��� ������� � ��� ����� ��� �� �������&� � ������� ��������� ���"��� ��� $ �� ���� �����"� ���� �� �������" � �������� ���������� ����� �� ������� ���� ����� ���� �� ������� ��� �����'������ �������������$ (� ���" ��" ��� ��� ������� ������� ���������� �����! �� ��� ��� ���������������� ���� ��� ��� ������������ ����� ����! ��� � ������ �� ��� �� �"��# � ��������&�� ������ �����$ (� �������� ��� ��������������� ��� ��������������� � ����� ����� ��� ���" ��" ��� �������'����� ��� �� ����� �� �� ���� � � � ��� �'����$ (� ���������� ��� �� ���� ��� ������ �� �����'��� ��� �� ���� � � ����� ������������� ��� ���� � ������� ���# ������ �� �������� �����������$ ������� ������ �� ��� ��������� � ��� ����� ���� ����� � �)��� ������ "���� �#�� ��� ������� �������'���� � �������� ����� � ��������$ (� ���" ��" �� ��� �*�������� � ��� �������� ����� �� "��#���)������ "��� ���� ���������$

��� ���+ ,������� ����������- %������ .���- ������������ %��� �����- �����'������� ����� �����- )��� ������ ��� �����- � �- �'����- .��'����� �����������$

��������������

%�"��� ������������ ����������� ������ �/� �������� 0������������ �*��������! ���� ����� ������� ����� ����� ����������� ��� ��� ���&�������� 1�������� ���� ����� ���� ����������$ 2���������������������&� ���� ���"���� ���� ��������� ������������ ���� ���������� ��� ����� #������ 3��� ������ �������!�� ��4 �� ���"����� ��� ����� ����������� ��� ��&�������� ������������� &� ���������$ �� ������ ����� ����� "�� ����� 2�������# �/��� ����������� ����������� ������ �/� �������� .����! ��� �� #�'

��� ������� 5������ �� 678889 :! :;;<:==

Page 2: Calculating Ordinal Regression Models in SAS and S-Plus

�������� ��� ��������� (�������������#����� ��������$ (�� &�����! "�� ��� ��#��������� �������!��/ ���� ��� ������������ %��� ������ ��� ��� ������������ ����� ������! ���� �� ��� ��� �� ����������� �������� �������� ������� ��������� ������$ (�� ����������� ��� ����������� ��� ����������'������ ������ ������� ��� &�����! "�� ��� ���� �� ���� ��� � � ��� �'���� ��������� ������$ .��������� "����� ��������������� ��� ����������! ���� ��� �� .���� ����� ������ ����"����� "�����! ��"������ ��� ����4 ��� ����#��#����� �� ��� ����������� ������������ ���������� "���$ �� ���&������ ���#� ��� ��� >�����&��� ��� ��"�/�������� ���� � ����������� �����������#���&������! "����� ������������ �"������ ��� �������� ������� �� �/����� ����$ � "����� ��/�����#����� ����&����! "���"���������� ��� ��"�/�������� ������� �/� ���� ���/)���� .����������� ���"����� "����� #�/����$

?$ ������������

���� �������� � ���������� ����� �� �����&��� ������� �������� ��������� �������� ��������� ��� ��������� ������ ��� ���� ����� � ��������� ����� �������� ����� ��������� ����� ��� � !����"� ��� #��$� ?=@:- ����%������ &��%���� ����� �������� ��� '����� ����� ���()� ����� *��(��� ��� #����� ����� ��� � +��(� ��� *�� ?=@=- ,��()�� ��(��� ���#���)(-�� ?=@=- !�(���� ��� ,����� ����� ,��(��.��� ��� #���*���������� /��� ���0� ��������� ����� ���� ����� ���(� ��� 1��)����*� ���2����� ���2� #��((� �������� ��� � � ?==;- ����� ��� ���3��� �����,���� �� ��$! ?==@�4$ �� ����� �� ��)������ ���� ������ �� ������ ����� ���� ���� ������� ���������� ����� ���� ��� ��������� ���� ���� �#� ��� ���� ���#�� ���� �/��� ���0� #��(( �� ��$! ?==;- ���(� ��� 1��)����*� ���24$A�����������! ����� ����� ���� ���� ����������&�� �� ��� ������ ��� ����� ����'����� ��������$ � �������� ����������� ���"��� �� �� � � ��� ����� �� ����������� ������� ����� ��� ��� ������� �� ��� ����������&����� � ������� ���������� ����� �� �� ������ � �� ������������� ��� ������������ � ����� ����� �������� �������$ �����������! �� �� ��)������ ��� ����� ��" ��������� ���"��� ���'��� � ��� �� ���� �� ����� ��� ������������ �� ����� �����$�� ���� ����� ��� �"� ��� ������� � ����� � ������� ���������� ����� �����

���� �� ������� ��� ����������� ������������� ��� ��������� ��� �*������� �� ������$�� �� ���"� ��" ��� ������������ ���� ���� � ��������� ����4 ��� ��� ��������'���� ����� ���� � �������� ��� '����� ����4 ��� � ������ �� ��� ������� ��' �"��# � ��������&�� ������ �����$ 3�� ���������������! �����������! ��� ��������'������� � ��� ����� �� ��������� ������������ ��� ��������$ �� �� ���"� �� ������ ��"��� ��)����� ������������ ��� �� ����� �� �� ���� � � � ��� �'����$

7$ �������

7�? ��� ������� � ����������� ������ �����

3� ���������� ��� ��������� � ��� ����� ��������&�� ������ ����� 6 ����������� '����� ����9 ��� �� �� ���� �������� � ������ �������� �������� �$ 1�� �� ���'

:;@ �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 3: Calculating Ordinal Regression Models in SAS and S-Plus

����! "� �������� ���� ��� �*��������� ����� � 6������ �� ����������9$ 3�� )���'���� � �� ������������ �� ���� �� "������ � ��� �� ���� �� �$ � � ����� ������� 7 ������ 6? � ��� ��� 8 � ��9 "� �����&� "������ ��� ����������� � ������� �6�9 � �6� � ? � � � �9 �� ���������� "��� � �� ���� � �� ����������� ����$ 3�� ����� � ��������&�� ������ ����� �� ���� ���� �� ����� ��

�B�6�9C � � D �� 6?9

"���� � �� �� ����������� ������� 6������ ���# �������9! � �� ��� ���������! ��� ��� ��� ���������� ��������� �� �$ �� ��� ���� � � � 7 �*��������� �������?!� � �! ��! �� �� �������� �� ��� ������ �� �������� �?�? D� � �D ����$ 1�� ����������� � ������ ��� ������� �������� ���� ��� ����"��� �"� ���# �������� �������� "����� ����$

?$ ��� ����� ���#+ �6�9 � ��� B�E6? � �9C 679

7$ ��� �� ��� ������ ���'��� ���#+ �6�9 � ��� B���� 6? � �9C $ 6F9

���� ���# �������� ��� ��������� � �������� ��� '����� ����4! ��� �� ��������� "� �������� ���� ����� �"�$ 3�� ����� ���# ����� �� ��� �������� ������������������ ���� ����� ��� B�6�9E6?�6�99C � � � �� �� �)�������� ��

�6�9 � �*� 6� D ��9EB? � �*� 6� � ��9C ! 6G9

"���� �� ��� �������� �������$ 3�� �� ��� ������ ���'��� 6�������9 ���# ����� ����� ���� �� "���� � ��� � ��� ������� ��� ��� �*��� � ����� ������� �������� B���� 6? � �6�99C � � D �� �� �)�������� ��

�6�9 � ? � �*� B��*� 6� D ��9C $ 6H9

7�7 ������ �!����� �����

,�� � ��" �� � ����������� �������� �������� "��� �D? ������� ����������$ (��������� � �������� �������� ���� �� I������� ������J ����� �� ������� ����������"��� ������ ������ ��������� �� ��� ������ ������� ������! �� �*� ���

� �

8 � �������? � �������� ���7 � ��������� ���

��� � ��

� � ��������� ���

�������������

�:�

,�� �"6�9 � �6� � " � � � �9 �� ��� ����������� �� ��� �����&����� � � � " ������ � �! " � 8!?!� � �! �$ 3�� ����� � ������� ���������� ����� �� ����� ���� ����� ������� �������������

�"6�9 � �6K � " � � � �9 � �"6�9 D� � �D ��6�9! " � ?!� � �! � $ 6;9

��� ������� 5������ �� 678889 : :;=

Page 4: Calculating Ordinal Regression Models in SAS and S-Plus

3�� �� � II������� ���������� ����L ��� �� �*������� �� ��� ���" ���� � �� ���������&�� �������� � �� ���������� ������ ���������� ����� ������ �� ���'������� "$ �� �� ���� ������� �� �� ����� � ���� �� ���� � ��� �� ������� ����'��������� �"$ �� ��! ��"����! ��� ����������� ��������� �� ������� ��� �*������� � ������������ ���������� �������� �� ����� �� ��� ��� �� ������� ������������� �� �������������� � ������� ����������$ 3�� ����� � ������� ���������� ����� �� ��'������ �� ��� ��������&�� ������ ���� 6?9 �� "���� ��� �� ������� ���������������� ���� ������� � �

�B�"6�9C � �" � �"� ! " � ?!� � �! � $ 6@9

A��� ���� "� ���� � ���� �)������� ��� � ���������� ���������� �� �������� ��������������� ���"��� � ��� �$ 3�� �������� ���� ����� �� ��� ������������ �� ������� ���������� ��������� ���� ��� ������ �� "! ���� ���� ��� ����

�B�"6�9C � �" � �� ! " � ?!� � �! � 6=9

�� ����������$ 3���! �� �� ���� �� ���� �� ��� ���������� ���# ������� � ��� �����'�������� ���������� ���������� ��� �)��� �� ���� ���'� ����� "$ 3�� ���)����� ���� I�)��� ������ ���� �����J ��� �� �� ��������� �������� ����� ���� ������� �� �������$ (� ������ �� ���� � ������� ����� �� ��� ����������� ������� �������������� ��" �� ��� ������� ����� "� ��� �� ��� ������� ���# ��������$.������ ����� ������ �� ��� ��� � ������� ���# ��������$ � ��� ����� ���#

679 �� ���� ���� 6=9 ���� ��

��� B�"6�9E6?�"6�99C � �" � ��

� �"6�9 � �*� 6�" � ��9EB? � �*� 6�" � ��9C! 6?89

"���� �� ��� "���'#��"� ������������ ���� 6�%9 ���� � ��������� ����4! ���������� ������� �������� ���� �#��(( �� ��$! ���24! �� ������� ����� ���� �/������0� ���(� ��� 1��)����*� ���24! �� ������� ���� ���� �*�(��� ���#����� ����� ��������� ����4! �� ���������J� ������� ���������� ���������%��� ��� &��%���� ����4$ 3�� �� ��� � ������� �� �� �� ��� �� � ����� ������ ������������� ��� �������� ����� ������� ���������� �����$ ��� ��� ���� � ������� �*��������� ������ �?!� � �! �� ��� ��� ������� ���� 6@9 ��� �*���� � 6@9 ��� 6=9 �� ���� �� "���� ��� �)��� ������ ���� ����� ����� ���� � � ��� �*��������� ������! ��� ��������� ���� �� ��� ������� ���������������� 6��%9 ���� �!�(���� ��� ,����� ����4$� ��� �� ��� ������ ���'��� ���# 6F9 �� ���� ���� 6=9 ���� ��

��� B��� 6?�"6�99C � �" � �� � �"6�9 � ? � �*� B��*� 6�" � ��9C ! 6??9

"���� �� ��� �������� ������������ ��&���� 6��9 ���� � ��������� �������������� ����4$ ������������� �� ��� ��% ����! ���� 6??9 ��������� ����)��� ������ ���� ����� �� �� � � ������� �*��������� ������ �� �� ������������� ������������ ��&���� 6���9 ����$

:@8 �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 5: Calculating Ordinal Regression Models in SAS and S-Plus

3�� �������� ���"��� ���� 6?89 ��� ���� 6??9 �� �� ��� ��� ��� � ��'����� ������$ ���� ����� ���� �� ���� ���������� ��� ��� �� �������� ��)�����������������������$ 3�� �% ����! ��"����! ��� �� � ��������� �������$ � ����!�� �� ��������� ����� � �������� � ��� ����������! �� ���� ��� ����� � ��� ������'���� ���������� ������$ ��������! �� �� ��������� ����� �������������� � ��� ��'����� ����������! �� ��� ���������� ���������� �� ��� ������ "��� ������������������ ��� ��������� �� ��� �������� ���������� ��� �������$ 3������! �� ���'����� ��� ��� ������ ������������� ���������� ����������! �� �*� 6�9 �� ����� ������� ���� ����� ���� ��� ���'� ������ �� ���&��� ��� ���� � ����*��������� ����� � �� ��� �������� � �� ��� ������ ��)������ ���� ������$.�� �� ����� �������! ��� �% ���� �� �� �� ��� ��� ���� ���������� ������ ������� ����$

7�F �!����!�� #�!� �����

3�� ����� � ������������ ����� 6��9 ����� �� ����� ���� ��� ����������� ����'��������� � ����� �� �������� " � ��� ��� ���M���� "�� ��� �� �������� " �� ��"��

�"6�9 � �6� � " � � "! � � �9 � �6� � " � � � �9E�6� " � � � �9

� �"6�9�N�86�9 � � � �� �"6�9O ! " � ?!� � �! � $ 6?79

3�� �" ��� ������ ������������ ������$ �� ���� ����� "� ��� ��� ���#"��� �� ���'���� � ��� ������������ ������ �������� ��� ��"��� ������������ �������"6�9 � �6� � " � � � "! � � �9 ��� ���� ��� ��)������$ 3�� ��� � ��"��������������� ������ �#�� ����� ���������� � ��� �������� � ���������� ���������������� �� ��$ � ���� ���# �������� ���� ����� �������� �� ��! ��"��� ��������'���� ������ ��������� � �� ������� � ���� ���# �������� "��� ��" ���# �������� ������ ����$ ��"����! � � ���������� � ������� ������ ����� �� ������� ����������"��� ������ ������ ��������� �� ��� ������ ������� ������! ��� �������� �� ����$(� "��� �� ���� ��� ��� ���� � ������ ������� ������ �� ����� "��� ��"�� ������������� ��� ��� ���� �����$ �����! �� ��� ���� ���������� ���� "� ���� ��� ���#'"��� ������������ ������$ 3�� �"� ����� �� ��� ���#"��� ��� ��"��� ��������'���� ������ ��� ��� �)�������� ��� ����� ������� �������$ 3���! ��� ��� �� �� ����'�� "���� ������������ ������ ������ �� ����$3�� ����� � �� ����� �� �������� �� ��� ��������&�� ������ ���� 6?9 ��

"���� ��� ������������ ������ �" ��� ���� ������� � �

�B�"6�9C � �" � �"� ! " � ?!� � �! � $ 6?F9

�� ���� �� ��� ������� ���������� ����� ��� ����� ���� ����� �� ��� �������'����� �� ��� �)��� ������ ���� �����! ���� ���� ��� ����

�B�"6�9C � �" � �� ! " � ?!� � �! � 6?G9

��� ������� 5������ �� 678889 : :@?

Page 6: Calculating Ordinal Regression Models in SAS and S-Plus

"��� � �� ������� ���������� ��������� �� � �� ����������$ � ��� ����� ���# 679�� ���� ���� 6?G9 ���� ��

��� B�"6�9E6? � �"6�99C � �" � ��

� �"6�9 � �*� 6�" � ��9EB? � �*� 6�" � ��9C! 6?H9

"���� �� ������ ������������ ����� ���� �����%��� ��� &��%���� ����� *��(��� ��� #����� ����� ���(� ��� 1��)����*� ���24 �� �������� ����������������� ���� ���������� ����4 �� ������������ ����� ��&��� ���� ����� ���24$ ��� ��� ���� � ������� �*��������� ������ �?!� � �! �� ��� ��� ������� ���� 6?G9�� � �*���� � 6?G9 ��� 6?H9 �� ���� �� "���� ��� �)��� ������ ���� ����� ���������� �� �� � � ��� �� ��� ��������� ���� �� ������ �*������ ����������������� 6��9 ���� �,���� �� ��$! ?==@�45� ��� �� ��� ������ ���'��� ���# 6F9 �� ���� ���� 6?G9 ���� ��

��� B���� 6? � �"6�99C � �" � �� � �"6�9 � ? � �*� B��*� 6�" � ��9C! 6?:9

"���� �� ���� ������ ������������ ����� ����$ � ����������� ���������� ���"������ ����� � ������� ���������� ����� ��� ��� ����� � ������������ ����� ������� ����� �� ��� ��� ���� ���� 6??9 ��� ���� 6?:9 ��� �)�������� �� ��� ��������� ��� �� � ���� ���� �� ��� ���������� ��������� "��� �� �������� � ���� ��'��� ��� ����� �� ��� �� � ���� 6/�.�.�. ��� �((��%�� ����9$

F$ �� ���������� ������

F�? ������� ����!�

(���� � �� ��� � ����������� ���"��� ���#���� ������� ������ �������� ������������ ����� �� ��� ����� ���#! ���������� ����� �� ������� ���� ��� ��� �� ����� ��� �����$ ��"����! �� �� �������� �� ��� ��� ���"��� �� ������ �������� ������'���� �� ���� ��� ��� ���� ����� � �� �����$ 3�� �� ����� 6?G9 ��� ��������� ����������� ������������� �� ������� ������� ������! "���� ��� ������������������������$ � ��� �������� ���� ��� �� ������������� ������������ �� ������������������� ��� ������������� ���� ������ ��� �"� ��" ��������� ��� �����! ��� ���'����� ��� ��� ������� ��� ������ � ��� �������� �� ���� ���'�����! ������ ������������������ ��� �� ������� �� ��� ������������ ���� �*�(��� ��� #����� �������)��� ��� +�)(������ ����� #��(( �� ��$! ���245 �� ��� ����"���! ��� ����������������� �� ��� ���#"��� ������������ ������ �� ���������$,�� � �� � ����������� �������� �������� "��� � � ? ������� ���������� 8!?!� � �! �

��� ������������� ��)������� �8! �?!� � �! ��$ 3�� ���� ������ � ���� �� ��� �����'������� ����� � ��� ������� �������� � 6� �9 �������� ��� ������������ � ����������� ���� ��� "��� �� � �6� � � � � �9 � ��$ 3�� ����� � ��� ��" ���'������������� � ������� ���� ������ �� � �� ��� ������������$ 3�� �� ������������ "���

:@7 �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 7: Calculating Ordinal Regression Models in SAS and S-Plus

�������� �������� � � � ��� �������� ��� ��" ������ �������� $# � ?! ��� ����� ������ ������������ ��� �������� � ����� � $# � 8$ 3�� ������ ������ � ������������ ���� ��� ������������ "��� � � � ? ������� ���? � �6� � � � ? �� � � ?9$ 3�� ����� � � �� ��" � � ?! ��� ���? ������������ "��� ���������������� � � � � ? ��� �������� ��� ������ �������� $# � ?! ��� ��� �� ������������������ ��� �������� � ����� � $# � 8$ 3��� ��������� ��������� ����� ����'���� " � ?$ 3�� ���� ���� ������ �������� ��� ������������ "��� � � ? ��� � � 8$3�� ������ �� ��� ��" ��������� ��� � � ? ��� $# � ? � � � ? ��� $# � 8 �� � 8$ 3�� ������������ ���� ��� �������� � ����� � �6�8 � �?9 � 6� � ?9 �7 �6� � 79 �F � � � �� �� ������������$ ������� ������ �������� ���������� �� ��� ��'���������� ���� ��� "��� $# �� �������� ��� � � ? �� � ��������� ��������������� ���'����� �������� ������ ��� ���������� ���������� � ��� ������������ ����� ���� �� ������� ����$3�� ��� � ������ �������� ���������� �� ��� ������������ ���� ��� ��� ���������

���� �� �� �������� �� "��# "��� ��� ��� ������� ����� 6?F9 "������ ��� ����� �������������� �)��� ������ ���� �����$ �� ��������� ������������ ���"��� ��� �� ���������� ���������� ��� ������ ��� ��� ���������� �*��������� ����� �! � ����"��� ������� ���������� ���������� �� ���� ���'����� �� ��������$ 3��� ����"� ���� ����� "���� ��� ����� � � ������ � �*��������� ������ �� ������� ��������� ������ � � ��� "���� ������� ������ � �*��������� ������ ����� �� ������ ���� ��� �)��� ������$ ���� � ��������� �� ��� �������� �� ��� ����������������� �����$ 1�� ������������ � ��� ����� ������� 6@9 ��� 6=9 ��������������"��� ������� � ������� ���������� ����� �� ��)�����$

F�7 ���!�!�� %� ����� � �&�

������� ���������� � � � ��� �� ���� �� ������ ��� ������� �������� ���������� �����$ 3�� ��������� ��%��3 6� �! ?=@;9 "�� ��������� �� �����&� ���� ������ ������ ��� ���������� ����� ����$ �� ��� ���� �� ���� �� ����� �������� ��������� ��� ��� �� ������� ������� �� ������� �������� ���� ��� �� ��� ��������������$ 3�� ��������� � 3�%. 6� �! ?=@;9 �������� � "��� ������� � ��������������� �������� ��������� �������� ���������� �� ������! ������ ��� ��� ������� ��'������$ � 3�%. ��! ��"����! ����� �� �������� � �������� ��������� �� ����'�� ��� �������� ����$ 3�� �������� � � ��������� �� ������ ��� ������� ������������������ ����� �� ,%���3�� 6� �! ?==89! "���� �� ���������� ����$3� ��������� �������� ���������� ����� �� ���� � ,%���3�� ����������� ����

� �" � � ����� ���� ��� ��)�����$ ������� � � ��������� ���� �� ����� ��

PROC LOGISTIC DATA�SASDATA DESCENDING;MODEL Y � X1 X2 X3 / LINK � LOGIT;

RUN;�����! �� � � ��� ��� ���� �� ����#� ��� ,%���3�� ���������! �� ������ ���� � ���� ��� ���������� ��� ����! ��� �� ������ ��� ������ �� ������� ��������

��� ������� 5������ �� 678889 : :@F

Page 8: Calculating Ordinal Regression Models in SAS and S-Plus

�������� � ��� ��� �*��������� ������ ��$ 3�� �*��������� ������ ��� �� ������'���� �� ������$ � ,%���3�� �������� �� �, �� ����� ���! ������ ��� �*���'������ ������ ��� ���� �� �������� �� ���� � �� � ��������� ������� �� ���������� ���� ����$ �� ��� ������������ ��� ��� �� ������ ��� .��A.�A������� �� ��� ��%� ����� ��� ������� ��� ,%���3�� ��������� ����� �� ��'���� ��� ����������� � � � 8 �� ��� ���� � � ������ ��������$ 3�� ,�AP �������� ��� ���� ����� ��� �� ���� ��)����� � ����� ���� ��� ����� ���# ������ �� ����$1�� ��� �� ��� ������ ���'��� ���# ��� ��� �� ������ /6'1��/7�/7�$ A������� �� ��� ���� � �� ������� �������� ,%���3�� ���� �������� ���������� ��� �% ���� 6?89 � /6'1�/7�68 �� ��� �� ���� 6??9 � /6'1��/7�/7� �� �����'���! ���������� � "������ ��� �)��� ������ ���� ����� �� ������� �� ��� ���� �����$3�� �� ����� ��� �� ���������� �� ���� � ,%���3�� � ��� �������� ����

��� �� ������������ �� ���� � � � ���� �����$ 3�� ���� ������������� �� ������#"��� ������������ ������ �� ��� ���� � � � ? � G ������� ���������� 8! ?! 7!F ��� �� �������� �� ���� � ��� ����"��� � � ����$

DATA CR1; SET SASDATA; IF Y<�3; CP�3; IF Y�3 THEN BR�1; ELSE BR�0;DATA CR2; SET SASDATA; IF Y<�2; CP�2; IF Y�2 THEN BR�1; ELSE BR�0;DATA CR3; SET SASDATA; IF Y<�1; CP�1; IF Y�1 THEN BR�1; ELSE BR�0;DATA CRM; SET CR1 CR2 CR3;IF CP�3 THEN CP3�1; ELSE CP3�0;IF CP�2 THEN CP2�1; ELSE CP2�0;

RUN;

3�� �� ���� 6?H9 ����� ��� ����� ���# ��� ���� �� ���������� �� ���� �

PROC LOGISTIC DATA�CRM DESCENDING;MODEL BR � CP2 CP3 X1 X2 X3 / LINK�LOGIT;

RUN;

3�� �� ���� 6?:9 ����� ��� �� ��� ������ ���'��� ���# ��� �� ���������� ����� �� � � � ���� ����� ��� �%., ������ ,�AP��,%�,%�$ 3��� ���������"��� ������ �� ��� �� � ���� ���� ���� ���� �� ��� ������������ �� ���� 6??9 ���������� ��%� ,%���3�� �� ��� �������� � �. 3 $ ��"����! ��� ��� �� ������ ������ � ����� ��� ������� ������������ ������! ��� ������� ��������� � �����������! ��� ��� ������� ��� � ��� .��A.�A� ������ �� ,%���3�� �� ������ ������� ������$ (��� �"� �������� ������������ ������ 6���#"��� ��� ��"���9!�"� �������� ���������� � ��� �������� 6? ��� 89! ��� �"� �������� ���� � ���.��A.�A� ������ 6��� ��� ��9 ����� ��� @ ������������� �� ��������� �� ��'��� �� � � �������� G ������� ���� �������� �� "���� ���� ��� �� �������$3�� ����� � �� ����� ��� �� ���������� �� ��������� ��� �������������

������� ��� � ���"��� ��� �" ��� �� ���������$ 3���� ������� ��� � ���� �� ���������� �� � ��������� � � ���� ����$

:@G �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 9: Calculating Ordinal Regression Models in SAS and S-Plus

F�F ���!�!�� %� ����� � �'����

%������ �������� ���������� �� ��� ���� � �������� �'���� ��� ��� �� ���������� ������ (����� ������� �� ��� � ��� ������� ��� �,����� ?==@�4 $ 1�� ������ ��������������� ���� �������� ����� ������� ������&�� �*� � ��#������� ���� �'���� �� ����$ �� ��� ������� ���� �� ����� ��

lrm(y ~ x1 � x2 � x3, data�splusdata).����������� ��� � �� ��������� �������� � ��� ���������� �� ��� ���� �� ��� ������������! �$�$ ��������� � � ������� ������ �� � �? ��� ��������� ��� �������'���� ��� �� �7 ��� �F ��� �� ���� �� ���� �������

lrm(y ~ s(x1) � x2 � x3 � x2:x3, data�splusdata).������������ ����� �������� ����� ��� �� ������� �� ����� ��� ���� ���������������������� ��������� �����$ 3�� ������� )�*��!�� �� �������� "��� ��� (������������ ���� ���� �� ��"��� �� ���� ��������$ 3� ��� ��� ���#"��� ������������������ ��� ��� �� ������� ��� ����� � ��� �������� �������� �$ �������)�%�)�*��!�� �� �� ���� �� ���#"��� �� ����� �� �������� �� ��� �������$ 3�����#"��� �� ���� ��� ���� �� �� �� ��� ���� ����� ��� �������� ��� �������6� ��� ���� ���9 �� ��� ��� ������� �� ��� (����� �������! �$�$

attach(splusdata)

up <- crback.setup(y)

y <- up$y

cohort <- up¢ohort

lrm(y ~ cohort � x1 � x2 � x3, data�splusdata[up$subs,])��glm(y ~ cohort � x1 � x2 � x3, family�binomial, data�splusdata[up$subs,]).

F�G ���� (�����!�)� +������ %� �&�

.��������� ����� �� ������ ��� ��������'�'�� � ��� ���������� ���� ��� ������� � � ���� �� ������ �������� �����$ 3�� ������ , �P1�3 �� ��� �%.,����� ��� ����� � ��� ��� �� ��� ,� ����" ��������'�'�� ���� �,��*� ���/�*����%� ����4$ 3�� ���������� ����������� ��������� �� !��)��� 6?=@?9 ����� ��)������ �� ��������� ��� �A1,�A� ������$ 3�� ��,%3� ������ ��)�������� �������� � �� ����* ���� 6� ������� ���� "��� ���� �� ��� �� ��� ����&������*��9 �� ���� ���������� ���������� ���������$ ������� ����� ����� ��� ������������� �� ������ �������� ����� ���� ��������� �������� ����� �� ���� ���������� ��� ���� � ������� ��������� �� ���� ��� �� ������� �� � ��������� ���� �� ����������� �&�� ��������$�� ��� ���� � ������� ��������� �� ���������� ����� �� ������ ��� ������ ����'

����'�'�� ��� ����� �� � �$ ��"����! ��� ����� ���� �� ������� ��� �)��� ������

��� ������� 5������ �� 678889 : :@H

Page 10: Calculating Ordinal Regression Models in SAS and S-Plus

���� ����� ��������� �� !�(���� ��� ,���� 6?==89 �� ���������� ��� ��������� ������$ �� ��� ���� � ��� �% ���� ��� ���� �� ������ II����� ���� �� ��������������� ���� ���� �����Q$ �� ��� ���� � ��� �� ���� ��� ��� II����� ������ ��� �)��� ������ ���� �����Q �� ����$ � ��� ����� ���� �� ����'������������ ������� ������ �'������ "���� ��� �� ��� � ��� �,���� �� ��$! ?==@�4 ����� ������')��� ��� ��)����� �� ������ ��� �������� � ��� �)��� ������ ���� �����$ ���������!��������� ������)��� ��� �����! "���� ��� �� �������� ��� �� ������� �� ���� � �'����$

F�H ���� (�����!�)� +������ %� �'����

%������� �% ��� �� ����� ���� � �)��� ������ �� ��� ������ � ��� �������� ������ �*��������� �����$ �� ��� ��������� ����# �� ���� �� �������� ��� ����� ��� �*��������� ������ �� ���� ����� � ��� �������� �������� "��� ��� �*������������ � ��� �*��������� ������ ����� ��� ����� � ��� �������� ����� ��� ��������������� ���������� ���� "���� �������� ���� ���� ��� �*��������� �����$ 3�� ���� ������ �� ������� � ��� �)��� ������ ���� ����� �� ����$,�� �� ��� �� �� � � ?!� � �! � ��� ��� �������� ������ � � ���M���� � ���

�������� � ��� ��� �*��������� ����� �! ������������$ 3�� �*������ ����� � ������ � � " �� ���� ���� ���� ��

�,�� � � � "� � ����?��

��"��������?-��� � "�

�?;�

�����

,�� � � � "� � ������ � � � � � "� �?@�

���

��� � � � � � "� � ��� � "�� � �� ��� � ����� � "� �?=�

������� ��!*�����*������� "���� �������� ����� � ��� ���� � ��� ������'���� � ����� ��� ������ � � �������� "��� ����� �*������ ������ �� �% ��� �� ����� �� �������� "��� ��� (����� ���#��� �� ��� �'�������� �,����� ?==@�4$ ������� ������� � ���� ������� "���� �������� ���#"��� �� ����� �� ���'����� �� ��� �������$ 1�� �������� ��� �*������ ������ � ��� ���������� �� �% ����� �����! ��� �� �� �������� "� ���� �� �� ���� ��� ���� ���� � ��� ��������'����� �"6�9 � �6� � " � � � �9$ �� ��� ��������� � �% ����� ���� �� ���� ��������'��"��� ��

�6� � " � � � �9 � �6� � " � � � �9 �6� � " � ? � � � �9

�6� � � � � � �9 � �6� � � � � � �9$ 6789

:@: �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 11: Calculating Ordinal Regression Models in SAS and S-Plus

1�� �� ����� "� ���

�6� � � � � � �9 � �6� � � � � �! � � �9

�6� � � � ? �� � �9 � �6� � � � ? � � � � ?� � � �9 �6� � � ? �� � �9

� �6� � � � ? � � � � ?� � � �9 N? � �6� � � �� � �9O

��� ���� �����������

�6� � " � � � �9 � �6� � " � � "! � � �9

�?� ��

��"�?��� � � �� � ��

�!

" � 8!� � �! � � ? 67?9

� ��������� ��� ���������� � ��� �*��������� ������ ��� ������� ���� ��� ���� ������ �"� ������ � �� �*��������� ����� �� ��"��� ����������� �� ������ � �$ ������ ��������� ������� ��������� ��� ����� �� ��� ��������� �������� � ������� �����'��� ����������$ ������� ��������� �� ��� ��� �*��������� �����! ��� ��� ���M���! ������ "�� �������� ����� ��� ����� ��

���" � ������ �-��� � "� � ���"���"�?� ���"� � �77�

3�� ������� ���������*��� �� ��� (����� ������� �� ����� ��������! �����! ����'���! �������� ��� ������� ��������� �� � �% ���� �� ��� � ������ .!���/$ ����'���� ������ ��� ��������� �� ����� ��� ������� ��������� �� ��� � ��� ������.��!/$ �� ���� � ������� ��������� � ������ ������������ ��� ���"�! "���� ��� ��'���� � ������� ������)�� �� ����

fit.po <- lrm(y ~ x1 � x2 � x3, data�splusdata)residuals(fit.po, type�“partial”, plot�T).

����� ����������� � ������� ��� ���� �� ��� ��� "���� �*��������� ����� �� ����� �������� ���E�� ��������� ������� �� ��� ��������$ ����� � ������ �������� �������������� �������� �$�$ ��

residuals(fit.po, type�“binary.score”, plot�T)��� ���� ����� �� ����# ��� �% ���� �����$3�� ������� ��!*���*���!��� ����� ������� ��������� �� � ��)����� � ������

�������� ���� ���������� �� ���� ���������$ �� ��� �� ���� �� ����# �� ����� ����� �� � "�� �� ���������*��� �� ���� �� �% �����! �$�$

f2 <- lrm(y�2 ~ x1 � x2 � x3, data�splusdata)f1 <- lrm(y�1 ~ x1 � x2 � x3, data�splusdata, subset�y<�1)plot.lrm.partial(f2, f1, center�T) .

��� ������� 5������ �� 678889 : :@;

Page 12: Calculating Ordinal Regression Models in SAS and S-Plus

�� ����������� �� ������ �������� ������

G�? (�!� ��� ��!���

3�� ���� �� � �� � :'���� ����"'�� ����� � ���� ? �������� �������� ����������'��� �� �� ���������� ������� ����� ��� ��� �������� ������ �9�.���� �� ��$! ���:� �.������� �� ��$! ���;4$ �� ���� �*� ��� ���� � � ��� ������� � ��� ��������� ������������ �� �� ���������� ��������$ �� ���� ����� ����"'�� ���� � :?F ���'����� �������� ��� ��������� ��� �� ����������� )������� �� "������ ����� ��� �������'����� ���"��� ��� ����������� ������ �� ����"'�� 6#�9 ��� ��� ���# ����� � �#���6��9! ��M����� �� ��� #��"� ���# ������ �������� �������� 6((9! �������������� ������� 601 9! ��� ��������� ����� �������� 6($�9$ � ��M��� ��� �� ������'����� ������ �� �������� "���� ���� �� �������� ��� ���� "���� ������� ������ ������� � � �#��� � � �#��� ��� �������� ����������� ��� ����������$ �����! ��"�� ������� ��� �� ��M��� �� �������� ����������� �� ���� ��������$ #� �� �������� � � ? � F ������� ���������� 8 � I�� �����������J! ? � I��������������������������J! ��� 7 � I�������� ����������� �� ���������J$ �� �� � ������ ������������������ "������ � ������� � �#�� ������ ��� ����� ������ �� ���$ (( �� � ���'������� �������� ������� �� ����"'��$ 1�� 01 ��� ($� ����� ��� ������ ����� ����� ������ ��� ���� 6H ������ ����+ ��������! ?! 7! F! ��� : ���� ����"'��9$ �� 3���� ? � ����������� �������" � ��� ���� �� �����$����� ��� ���3�� 6?==@9 ���� ����� ���� �� �� ���� ������� �������� ������'

���� ����� 6�% ����! �������� ������ �������� ���������� �����! ������ ����������� ����������! ��% ����9 �� ��� ���� � ���'������������ ����$ 3�� �)��������� ���� ����� �� ��� ������� �� ��� ���# ����� � �#��� ������ ��� ����3��� ����4$ �����! ��� ����������� � ��� �% ���� 6?89 ������� ��������� ��'�����$ � ��� �������� ������ ���������� �������� �� ���� ����� �� ���� � ��� ��% ���� ��� ������ ����������� � �������� ������ �������� ���������� ����� �����'����� � �� ��� ��� ���)���� ���� �� �����&� ������� ���� "��� ���'������������

:@@ �5 ������ 5 �����+ ����������� %������ ���������� ������

3���� ?

.���������� ���������� � ��� �������� ����

>������� >������� ����� ����������� ������ �� ����"'�� 6#�9 3������ �

A���

� � F@@

A�����'���������� � ??@

�������E������ � ?8; � � :?F

�� ����������� �� �������� ?= 6HR9 78 6?;R9 ;G 6:=R9 ??F 6?@R9�� ��� � �#��� ?=; 6H?R9 ;: 6:GR9 H7 6G=R9 F7H 6HFR9(( .������� �������� 6��9 ?7$; 6:$;9 ?:$; 6:$?9 7?$: 6:$H9 ?H$8 6;$G901 ������������ �� ������� 6R9 ;$H 6?$79 @$8 6?$79 @$F 6?$G9 ;$@ 6?$F9($� .����$ ����� �������� 6 ��9 ;@$: 6:$:9 @8$= 6:$;9 @G$H 6;$G9 @8$? 6;$?9

���� ��� ����� �� ���� 6�.9 �� �� ���� 6R9

Page 13: Calculating Ordinal Regression Models in SAS and S-Plus

����$ �� ���� �����! ������������ ��� ����� � �� ����� "��� ��� "������ ����)��� ������ ���� ����� �� ������������ ��� �� ����� "��� ��� ����� ������������������� �� ����� ��� ���3�� 6?==@9$

G�7 #����!�

3�� ������� � ��� �������� ����� 6�%! ��! ��� ��9 ��� )���� �� ���� ���� �� ������� ���� ���������� ���������� �������� ���� ���� � ������� ������ �� ���������� ����� 63���� 79$

��� ������� 5������ �� 678889 : :@=

1��$ ?$ � ������ ������� �������� ����� �� ��� ���������� � ��� �������� �% ���� ������� �� ����������� ����$ 1�� � �#��� 6� 9 ��� �)��� ������ ���� ����� ���� ��� ��� �� �� ���)����$ 1�� ���'����� �������� 6��9 � )�������� ��������� ������������ �� �� ���� �����$

Page 14: Calculating Ordinal Regression Models in SAS and S-Plus

:=8 �5 ������ 5 �����+ ����������� %������ ���������� ������

1��$ 7$ � ������ ������� �������� ����� �� ��� ���������� � ��� �������� �� ���� ������� �� ����������� ����$ 3�� ������� ��� �� ���� �� ���� � ��� �% ���� 61����� ?9 ��� ���" ������� �������������������� �� ��� ��� � ������' ������� 6��� ������� F$H9$

3���� 7

������� � ��� ������������� �������� ����� ������� �� ��� �������� ����

����� ������� ���������� ������������ �����

,��# ����� ������� ����� �������

����� �% ���� �� ���� �� ���� �� � �� ����

�� � � �� � � �� � � �� � �

�� 8$7HH 8$?=7 8$?@G7 8$77: 8$?GF 8$??FH 8$7:F 8$?;H 8$?F7; 8$77: 8$?GG 8$??:H(( 8$?G8 8$8?G 8$888? 8$8=7 8$88= 8$888? 8$??= 8$8?7 8$888? 8$8=7 8$88= 8$888?01 8$G:8 8$8;G 8$888? 8$FGG 8$8HF 8$888? 8$G?@ 8$8:@ 8$888? 8$FGG 8$8HF 8$888?($� 8$8;7 8$8?G 8$888? 8$8:8 8$8?8 8$888? 8$8:= 8$8?7 8$888? 8$8:8 8$8?8 8$888?

Page 15: Calculating Ordinal Regression Models in SAS and S-Plus

3�� ����������� � ��� �������� ����� �� ������������� �� ��� �)��� ������ ��'�� ����� �� ��� ������� �� ��� ���# ����� � �#��� ��� ������� �������� ���������� ��� �������� ������� �� ��� �������� ������� �� ��� ����� ��� �� ��� ������� �����$3��� ��� �� ���� �� 1������ ? ��� 7 "���� ��� � ������ ������� ��������� ������"� �� ��� �% ��� ��� �� ����$

��� ������� 5������ �� 678889 : :=?

1��$ F$ � ������ ������� �������� ����� � ��� �% ���� ������� �� ��� �������� ���� �� ��� ������ 6��9��� )�������� ����� 6��)9 � �������� ��������$

3���� F

������� � ��� ���)���� �������� ��� �*������ ����� ������� �� ��� �������� ����

����� ������� ���������� ������������ �����

,��# ����� ����� ����� �������

����� �������� ������ ����� ��% ���� �� ���� �� ����

��" � � ��" � � ��" � � ��" � �

�� 8$G7 8$7?8 8$8G;: 8$GGG 8$788 8$87:: 8$;F8 8$7G= 8$88FG 8$H@: 8$78F 8$88F=

�8$?7 8$7:G 8$:GF: �8$?G@ 8$7:? 8$H;8; �8$?:7 8$7GF 8$H8F: �8$?FG 8$?=; 8$H88F

(( 8$G? 8$8:: 8$888?8$F;; 8$8:? 8$888? 8$F:8 8$8H@ 8$888? 8$F?H 8$8G= 8$888?

8$F= 8$8=: 8$888?

((2 �8$8? 8$887 8$888? �8$88: 8$887 8$888? �8$88: 8$88? 8$888? �8$88: 8$88? 8$888?�8$8? 8$887 8$8?8H

01 8$GF 8$8@G 8$888?8$G:? 8$8;: 8$888? 8$G?= 8$8;8 8$888? 8$FF= 8$8HH 8$888?

8$H: 8$?8H 8$888?

($� 8$8: 8$8?H 8$888?8$8:: 8$8?G 8$888? 8$8:? 8$8?F 8$888? 8$8G= 8$8?8 8$888?

8$8@ 8$8?@ 8$888?

Page 16: Calculating Ordinal Regression Models in SAS and S-Plus

���������� � "������ � ������� ���������� �� � ������������ ����� ���������� �� ���� �� �� ��)����� �� ������� ���)��� ������ �� � �#��� ��� ��� )���'����� ���� � �������� �������� 6((29$ 3��� ��� �������� ���"��� ��� ����������� �������� �������� �� ���)������ ��������� �� ����� ��� ������ ��� ��� )������������ � (( �� ��������� �� 1����� F$3�� �)��� ������ ���� ����� ��� � �� �� ���)���� �� ��� �*��������� ���������

�*���� � � �#��� �� ��� �% �� "��� �� �� ��� �� ���� 61������ G ��� H9$1�� ��� �*������ ���� ����� �� �� ����� ��������� �� ��� � ��� �����$ ���� ����� ��� �� �� �� ������� "��� ��� ���� �������� ���� ���)��� ������ ����������� �� � �#���$3�� ��������� � ���)��� ������ �� � �#��� ����� �� ��� ���� �������� �� '

���&�� �� 3���� F$

:=7 �5 ������ 5 �����+ ����������� %������ ���������� ������

1��$ G$ %������� ���� 6����� �����9 ��� �*'������ ������ 6�%+ ������ �����- ��+ �� ����9 � ��� �*��������� ������ "����� ���� ��'������ �������� �� ��� �% ��� ��� �� ����������� �� ��� �������� ����$

Page 17: Calculating Ordinal Regression Models in SAS and S-Plus

���� ����� �� ������ �������� ���"��� ��� ������� � ��� ������� ����� "������ �*������� ���� ��� ���� ���� ���� ���� � ������ �*������ ����� 6��% �����9 ���� ��"�� �������� ������ ��� ��"�� �'������ ���� ��� �������� ������ ��'������ ����� ��� �� ��� ��"�� �� ��� � ���� ���� ���� �����$ ��"����! ��� ���'�������� ���������� ���������� ����� � ��� �*��������� ��������� ��� ��� �� ��� ��� �����$ 3�� ���� ���� ����� � ��� �*��������� ������ ���������� �� ���� � ��� �� ���� ��� ���"� �� 1����� :$

H$ �� ��������

3� ����������� ��� ���� � ��� ���� ���� ���������� ���������� ���������� �� ��������� ���� ���� ��� �)��� ������ � �������� �� �*������ ���� �� ����! �"�

��� ������� 5������ �� 678889 : :=F

1��$ H$ %������� ���� 6����� �����9 ��� �*'������ ������ 6�%+ ������ �����- ��+ �� ����9 � ��� �*��������� ������ "����� ���� ��'������ �������� �� ��� �% ��� ��� �� ����������� �� ��� �������� ����$

Page 18: Calculating Ordinal Regression Models in SAS and S-Plus

�� ������� ������� "��� ����� ��$ � ����! �� �������� "��� ����� �� �� ��������� �%! ��� ��! ��� ��� �� ���� �� ���� ����� �� ��� �� � �����! ���� ���� ��� ���� ����� "��� �����$ ��������! ��� �� ��� ��� �� ���� "�������� �� ���� ����� �� ��� �� ����$3�� �������� ���� ��� �� ���� �� �� �������� �� ����"�$ 1���� ��� �% ���� �� ��

"��� ��� �������� ���������� ������! ���� ��� ���������� ������������� �6�� � " �� � ��9��� ���� ���� ����� ��� ���� ���� ���� ���� � ��� ����

fit.po <- lrm(ret6 ~ sm � dd � ddq � h1c � dbp, x�T, y�T, data�crm).1�� ���� ��� ����* � ���� ���� ������������� �� � � 8!?!7 �� �� ����� ��� ������� �� ����� �� 68! ?! 79 ����� ����� ������������� � ��" ��� � �������������� �� ���������$ 3��� "�� ���� ?888 �� ��$

:=G �5 ������ 5 �����+ ����������� %������ ���������� ������

sm

log

odds

0 1

-4

-2

0

2

4

Retinopathy≤1

all

dd

log

odds

5 10 15 20 25 30 35

-4

-2

0

2

4 Retinopathy≤1

all

ddq

log

odds

0 200 400 600 800 1200

-4

-2

0

2

4

Retinopathy≤1

all

h1c

log

odds

5 6 7 8 9 10 11 12

-4

-2

0

2

4

Retinopathy≤1

all

dbp

log

odds

65 70 75 80 85 90 95

-4

-2

0

2

4

Retinopathy≤1

all

1��$ :$ �������� ����� � �*��������� ������ ����� ��� ���� "���� ��� �� ���� "�� ��������� ��� �������� ����$ 3�� ����� ��� ����� �� ������������� � ������������7$ ����� ��� ��� ���"��� � �� �� �'�*�� �����$

Page 19: Calculating Ordinal Regression Models in SAS and S-Plus

�� ������ ��� ���� ���� ���� ���� � ��� �������� ���� "��� ��� ���� ����� ���� �� ?888 �� ������� ���� ����� ���� ���� � ���� ��� �������� ������$3�� �� � ��������� "�� ���� "��� ��� �� ����! "��� ��� "������ ��������������"��� � �#��� ������ ��� �������� �����!

attach(crm)

up <- crback.setup(ret6)

y <- up$y

cohort <- up$cohort

fit.cr <- lrm(y ~ cohort � sm � dd � ddq � h1c � dbp, data�crm[up$subs,])fit.ecr <- lrm(y ~ cohort*sm � dd � ddq � h1c � dbp, data�crm[up$subs,]).3�� ������� �� ��� ����� � �#��� ��� ����� �� 3���� G$ � �*������! ��� ���� �

��� ���� ���� ���������� ���������� �� ��" �� ��� �����$ ������ �� ������� ����� "�� ����� �� ����� �� ��������� ���� ��� ����� ��

��� �� ���� "���

�6� � 7 � � 7! �? � �?! �7 � �79

� �*� 6� � �?�? � �7 �79EB? � �*� 6� � �?�? � �7 �79C

�6� � ? � � ?! �? � �?! �7 � �79

� �*� 6� � �� 6�? � �9 �? � �7 �79EB? � �*� 6� � �� 6�? � �9 �? � �7 �79C

��� ���� ����� 6�! �! �?! �7! �9 � 6�8$H! 8$H! ?! ?! �8$H9 "���� �? ����7 ��� ������ ����� ��������� ��� � "�� �� ����� �� �����$ 3�� �� �����&� �� � � H88 ��� ��� �� ��� � �� ������� ���� �� ?888$ 3�� ������� ��� ����� ��3���� H$

��� ������� 5������ �� 678889 : :=H

3���� G

���� � ��� ���������� ���������� � � �#��� ���������� �� ?888 �� �������� � ��� ���'����� ����

�% ���� �� ���� �� ����

�� 8$7=R ?$@?R 8$F8R����������� � � ?$=:R

3���� H

���� � ��� ���������� ���������� ���������� �� ?888 �� �������� � ��������� ���� ������� ��� �� ����

�� ���� �� ����

�? FH$FR 7$?FR� � ?$8HR�7 8$GHR 8$=FR

Page 20: Calculating Ordinal Regression Models in SAS and S-Plus

� �����! ��� ���� � ��� ���������� ���������� �� ��" � ��� ���� ���� ������� �� ��� ����$ ��"����! ��� ���� � ��� ���� ���� �? ���� ���� �� ��� ����'���� �� ���� �� )���� ����� �� ��� �)��� ������ ���� ����� ���� ��� ���� �� �������������$

:$ .���������

(� ����� "��� #��(( �� ��$ 6?==;9 ��� ���(� ��� 1��)����* 6?==;9 ���� ����'��� ���������� ����� ������ �� ��� "����� ���� �� ����� ������ ��� ��� ���'��� ��������$ ��"����! �� ���)���� ��� ��� ��� �� �� ���� ������ ����� ����'����'�'�� ��� �������� � ��� ���� ���� ������$ � ��� ����� ���� ����� � �)��������� �� ��� ������� �������� ������ �� ������� �� ��� ���� ��� �������� �����6������������ ���� ���� ��� ������������ ����� ����9 ��������� ��"���� �������������� ������ ������������� ���� ����� "���� �� ���&� ��� ����� � �*�����'���� ������ ���� ��� �������� ������$ ��"����! � ��� �)��� ������ ���� ����� ����������! �*�������� � ��� �������� ����� ��� ��)�����$ � �� �������� �� ������������ � ���� �������� �� �� ��#��"� "���� ���� � ��� ��������� ��� �������)������ ��� ��� � ���������� ����� �� ������������� ��������'�'�� ��� ����#'��� � ���� ���� ������ �� ��)����� �� ��� ����$ (� ���" ��" ��� ��������������"��� ���#���� � � ��� �'���� ��� �� ���� �� ���� �������� ��� �� ����'���� � ������� ���������� ����� ���� �� ��� ���� � ���)��� ������$� � ���� �� ���� ������ �� ��� �������� ������� ���������� ����� ���� �� ���

������������ ���� ��� ��� ������������ ��&���� ����$ 1�� ����� ����� � � ���'����� � ��� � ���� �������� ������� ���������� ��� ��������� � �*��������� ��'����$ ��"����! ��� ���� � � � ������ �� �"��� � ��� ��� ���� ��� �������� ����� ���� ��� �)��� ������ ��� �� ����� ���� �� ��� ���� "���� ���� ���� �'���� �� ��������$ .��������� ����� �� ������������� ��������'�'�� ��� � ��� ��������� �� ������ �������� ���������$ �� ��� ���� � ������� ��������� ��� ������� �� ��� ����� ��� ������ �� ��)����� �� ��� ����� ���������� ��� ���� ���')������$ �� � � ��� ��� ��� ������ �� ������� �&� ��� ������� �������� ��� �������� ���������� ����� ����� �� � � �� ���� ������� �&�� �������� 6����� ������3��� ����9$ ��� ���� ������ �� ��������� ����� ��������� ��� ��������'�'�� � ������� ���������� ����� �� ����� �� ��� (����� ���#��� �� �'����6�����! ?==@�9$ ���������! � ������ ������� �������� ����� ��� ����� �� �������� ����������� ��� ���)���� � ��� �)��� ������ ���� ����� ��� ��� ��������� ��'�� ����� � ��� �*�������� ������ �� ��� ���������� ���# �������$(� ���� ���� ���������� ��������� ���"��� ��� �"� ���� ������� � �������

���������� ��� ������������ ����� ����� �� "��� �� � ��� ������� ���# ��������$3��� ��� �� �*������� �� ��� ��� ���� ��� ������� ���������� ���� ��� ��������������� ����� ���� ����� ��� ������� ���# ��� �)�������� �� ��� ���� 6/�.�.�.��� �((��%�� ����9$ %� ��� ����� ���� ��� ���# �������� ����� ��� ������� ���)���� �� ���� �� ����� �� � ��� ������������� 6 �������� ��� '����� ����9$ �

:=: �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 21: Calculating Ordinal Regression Models in SAS and S-Plus

�� ��������� ������������ ��� �������� ������������� ��� ��� ����� ������� ���# ���'����� "���� ������� ��� ���� �� )���� ������� ���� ���� ������������ ���"��� ����*��������� ������ ��� ��� ��������$ 3��� �� ���"� �� 1����� ; "���� ��� ����' ���� �������� ������ �� ������ �������� ���������� ����� ����� ��� ����� ������ ������� ���# ������� �� ��� �������� ���� ��� �� �����$ 3���� ��� ������������"��� ��� ������ �� ��� ����� ��� ��"�� ����$ ��"����! �� ��� �������� ��"���� ���� ��� ��������� 6�� ?� ���"��� H ��� ?FR9 �� �������� ��������� �����������$ � ��� ������� ���������� ��� ������������ ����� ����� ��� �)�������� �� ���

������� ���# ��� ��� ����� ��� ��� ������� ���# ��� �� ������� �� ��������� �������'�����! ��� ����� ���������� ���� "���� ��� ������ �� )���� ������� ���� ���� ��'������ ������$ �����! �� ��� �� �*������ ���� ��� ����������� �� ��� ����� "������ �� ���� �� ��������$ ��"����! ��� ��� ���� ���� ������ ���� �� �� ����#����������$ � ��� �)��� ������ ���� ����� �� ����� ��� �������� ����� ��� �� ����- ����� ���� ����� �� �������� ��� ���������� �*������ ����� ��� �� �������$3�� ������ �� ��� � ��� �������� ����� ������� �� "������ ��� ������������

"���� �� ���� ��� �� ������� ������������� �� ��� ������������ ������$ �� ����������J ������� ��� ������������ ���� ���� �� ������ �� ��� ��� ������ �� �����'���� ���� ��� ������������ ��&���� ��� ��� ������������ ����� ����$ �� �� ��������� �� �*����� � ���������� ���� ��� ������� ��� ��� ��� �� � ���� � �������� ���� �������� ����������$ %��� ��� �% ���� ��� ��� ��������� ������ ���� ���� �������� � ��� ���������� ���������� ������ ���� � �������� � ��� �������� ����'������$�� ��� ���� � ���)��� ������ ��� ����������� � �������� ������� ����������

����� ���� �� ��� �% ��� ��� �� ���� ����� �� )����������� �������$ 3����

��� ������� 5������ �� 678889 : :=;

0.0

0.2

0.4

0.6

0.8

1.0

3 4 5 6 7 8 9 10 11 12 13 14 15

Glycosylated hemoglobin (%)

Ris

k of

ret

inop

athy logit

cloglog

1��$ ;$ ��� ���� �������� ������ �� ��� �� ��� ������ ���������� ����� ����� ��� ��������# 6����� �����9 ��� ��� ������� ���# 6������ �����9 ������� �� ��� �������� ����$ 3�� �����'��� ����� ��������� ��� �������� �� "���� ���� ��� ���������$

Page 22: Calculating Ordinal Regression Models in SAS and S-Plus

����� ��������� �� ���)���� ����������� � ��� ���� ����������� ���"��� ��� �*'��������� ������ ��� ��� ��������$ �� ��� ���� � ��� �������� ���� ��� ������������ ��� �������� ����� "���� ���� �� ��� ������� ���������� ���� ��� ���� �� �#��� ��� �� �������� ���� �� ��� ������� ��� � �������� �����������$ 3���� �������� ���"�� ���� ��� ���� � ��� ���������� ��������� �� ����� � ��� ����'���� �� ���� �� ������� ��� ��� ���� ���� ��� ���)��� ������$ 3� ����� ������ ���� �������� ������ �������� �������� ����������� �� ��� ��% �� �� �������� �� ����$ 1�� ���� ������ ��� �� � ������ ���� ����� ��� ��������$ � ����'������ ����� �� ���� ���� �� ��� ������������ � ���"���$ �� ���� ����� ��� �� ��'�� ��� ��� ��������� ���� ��� ���"��� �������� �� ������ �������� ���������� ����� ����$�� �� ���! ����� ��� �� ��������� � ��������� ��������� ���"��� ��� �������

� ������� ���������� ��� ������������ ����� �����$ �� ����� ���� �� �������� ������ "���� ��� �� ����#�� �������� ����� � ���� ��� �� ������� ���')������$ � ��� �)��� ������ ���� ����� �� ��� ������� ��� �� �������� �*���'����� � ��� ����� ������ �� �������$ 3�� ������ � � ���� ������� �� ���������������J� ��������� �� �� ������� ������������� �� ������������ ������ ��� ��������������� � ���"��� �� ������������$

#������)��

���()� 5� ?=@=+ 3������� �� ������� ������� ����������� �������� ����$ ���)����)�� $����!�� ���!7=8�F8?$

���(�! �$ >$ ��� 1��)����*! .$ �$! ?==;+ ���������� ����� �� ������� ���������+ �����" � ������ ��� ������������$ -�!����!���� 3����� � ,��������� ��! ?F7F�?FFF$

������! 5$ $! ?=@G+ ���������� ��� ������� ����������� ��������� 6"��� ����������9$ 3����� � !��#��� �!�!��!�)�� �)��!� � ��! ?�F8$

*�(���! �$ ��� #����! �$! ?=@=+ %������ ���������� ����� �� ����� ������� ����$ &����)��3����� � ,��������� ���! ?=?�78G$

��� � <5� !����"� #5 95� ��� #��$�� 5 �5! ?=@:+ %������ ������ ��� ����������+ � �*� ��� �����'��� ���� ������ ����� ��� ��� ������� �� ������� ����� �����$ &������ �!�!��!�)� �! 7@=�F8?$

��� ! .$! +��(! �$ �$! ��� *��! .$! ?=@=+ 3�� ������� �������� ���������� ���� �� ���������+������ ���������� � �� ����� �� ��� ������J� �� ��$ �!�!��!�)� �� ����)��� !! ?F?;�?F7:$

�����! �$ ��� ���3��! �$! ?==@+ ����� ������ �������� ���������� ����� �� ������� ���� "������'������������ ����$ 3����� � ����)�� ,��������� ��! @8=�@?:$

��)���! .$ �$ ��� +�)(�����! 5$! ?==?+ ������� � ������ �� � ���� "��� ������� ���������� ���������$ �!�!��!�)� �� ����)��� ��! ?;8F�?;?8$

���! �$! ?==H+ ,�������'����� �� ������� ���� ����� �� ������� ����+ ��������&�� ���'������ ��'�� ��������$ �!�!��!�)� �� ����)��� ��! ??=?�?78F$

���! �$! ?==;+ ������� ��� ���������� ����� ����� �� ������������ ������$ �!�!��!�)� �� ����)��� "!GFH�GG?$

��������! �$! ?=@H+ � ����������� � �������� ����� �� ��� �������� � ������� ���������$ $���!��')�� 3����� �"! ?@=�?=;$

��������! �$! ?==G+ ���������� ����� �� ������� �������� ����������$ �!�!��!�)� �� ����)��� � !?::H�?:;;$

����%���! �$ ��� &��%���! >$! ?=@@+ �� ������� � ���������� ����� �� ������� ���� �� ���������� � ����������'#����� �������$ ������� 3����� � �!�!��!�)� ��! F7H�FFH$

:=@ �5 ������ 5 �����+ ����������� %������ ���������� ������

Page 23: Calculating Ordinal Regression Models in SAS and S-Plus

,����! 1$ $ 5�$! ?==@�+ .�����+ � �������� �� ��������������E����� ������� �������! �������! ����' �����! ����������! ��������! ��� ����������$ 1�������� ��������� �� ��� (�� �� ��� ����,�� ������'���� � ����������� ���"��� �� ��������������� �����������������$

,����! 1$ $ 5�$! ����)�! �$ $! ��3�! �$! ����! P$ $! ���������! $ P$! /��*���! .$! ���! ,$! ��(����)��! �$! ��� =)����%���! �$ 1$! ?==@�+ 3������� �� �������������+ .������ ���� � �������� ���������� ���� �� �� ������� ����� �+ 3�� (���� ������ %�����&����� ���������������� � �������� ����� ��� ���������� ����� � ���� ����! ������ ��� ���������� �� K����������$ �!�!��!�)� �� ����)��� �"! =8=�=GG$

,��()�! 3$ 5$! ��(��! 5$ ,$! ��� #���)(-��! �$ �$! ?=@=+ ���������� "��� �� ������� ����������� ��'������$ �!�!��!�)� �� ����)��� !! ;@H�;=G$

,��(��.���� +5 ��� #���*����� 5� ?==?+ �� ������� � ���������� ����� �� ��� �������� �������� ����������� ����$ &������ �!�!��!�)� ��! 7G=�7H=$

,��*�� <5 +5 ��� /�*����%� #5� ?=@8+ ��������'�'�� ����� �� ��� ������� �������� ���������� ����$ �����)�!��� �� �!�!��!�)� � &4 ����� ��� ��!��� �! ?8GF�?8:=$

9�.����! >$! ��.���! �$! ��((! �$! �.�������! �$! ��� ����! �$! ?==F+ ������ ��� �������������� � ���������� ������� ������� �� ������� �������� ������� ������ ����$ (��%�!���� �! ==�?8H$

/�.�.�. ! $ ��� �((��%�! 5$ A$ �$! ?=@H+ 3�� �)��������� � �"� ����� �� ������� ����$ $���!����"�! 78:�78;$

/��! 5$! ?==7+ �� ������� ����� �������� �� ������� �������� ���������+ ����������� �� ��� ��������������$ ���!�� &����)�!��� �� $��)���)�� !! HHH�H:7$

��������! �$! ?=@8+ ���������� ����� �� ������� ���� 6"��� ����������9$ 3����� � !�� #����!�!��!�)�� �)��!� � $ ��! ?8=�?G7$

��������! �$ ��� '����! 5$ $! ?=@=+ ����������� ������ �����$ ���� �� ��� ����! A�" K��#$ �.�������! �$! �����! �$! ��((! �$! 9�.����! >$! ��.���! �$! +�����! ($! 73�*���! �$! ���

����! �$! ?==:+ ��������� � �#��� ��� ����������� � ����������� ��� ����������� �� ���� ?��������$ (��%�!�) ����)��� � ! HF:�HGF$

!�(����! �$ ��� ,����! 1$ $ 5�$! ?==8+ ������� ������������ ���� ���� �� ������� �������� ����'�����$ &������ �!�!��!�)� �! 78H�7?;$

!��)���� <5! ?=@?+ ,������� ���������� �����������$ &����� � �!�!��!�)� �! ;8H�;7G$� �! ?=@;+ �&�5��&� ����� �� ������� ���!���6 7����� 8 ,��!��$ � � ��������� ���$! ����! A�$� �! ?==8+ �&� ��)���)�� #���! �'9::6 �&�5��&� ��!���4 &�-� ��� �+�-��- ��)������6 #�'

����� 8*:;$ � � ��������� ���$! ����! A�$#��((! �$ �$! �������! �$ �$! ��� � �! A$ $! ?==;+ ����������� ������ ��� � ������� ����� �� ��

�� �������� �������$ 3����� � ����)�� ,��������� ��! GH�HH$

.�$ ���� ����� 6.���$ ����$9 ��������! ����� ?=== � F � ���� ������� ��� ����&������� ��������# �������! ��� 78881�#����/� �/� �����������"������������ �������! ��� 7888����������/� ��������������� ?8 8? F?.'FFH8? ����������� ���1�*+ 8H7?E?8:�:G:H ���+ ���$������S���'��������$��

��� ������� 5������ �� 678889 : :==

Page 24: Calculating Ordinal Regression Models in SAS and S-Plus