/*========================================================================== SF6D US Programme. *Deriving the SF-6D health state classification from the SF-12*. *Original Author: John Brazier, modified by Joanne Wu to make it run in SAS *Date: 24 June 2003 *Taken from Brazier JE, Roberts JR, The estimation of a preference-based measure of health from the SF-12. (Available from the authors). *Please note the following before proceeding with the programme* *SF-12 items are numbered 1-12. *Programme uses raw (i.e.uncoded) SF-12 item responses. *Designed for SF-12 version 1 (Ware JE, Kosinski M, Keller S. SF-12: How to score the SF-12 physical and mental health summary scales. *The Health Institute, new England medical Centre, Boston, Massachusetts, March 1995) or 2. For version 1 you will need to convert the response choice scales *of SF10 and SF11onto the version II scale which does not have a 'good bit of the time'. The syntax *for doing this is presented below. */ /**Converting SF10 and SF11 to version two.**/ rand=uniform(-1); SF11r=sf11; /*If (sf11=2) then sf11r=2; If (sf11=3 and rand <0.5) then sf11r=2; If (sf11=3 and rand>=0.5) then sf11r=3; If (sf11=4) then sf11r=3; If (sf11=5) then sf11r=4; If (sf11=6) then sf11r=5;*/ SF10r=sf10; /*If (sf10=2) then sf10r=2; If (sf10=3 and rand <0.5) then sf10r=2; If (sf10=3 and rand>=0.5) then sf10r=3; If (sf10=4) then sf10r=3; If (sf10=5) then sf10r=4; If (sf10=6) then sf10r=5;*/ *SF6D*; IF (sf2=3) then SFPhys = 1; IF (sf2=2) then SFPhys = 2; IF (sf2=1) then SFPhys=3; If ((sf5=2) and (sf6=2)) then SFRole = 1; IF (sf5=1) then SFRole = 2; IF (sf6=1) then SFRole = 3; IF (sf5=1 and sf6=1) then SFRole = 4; IF (sf12=5) then SFSocial = 1; IF (sf12=4) then SFSocial = 2; IF (sf12=3) then SFSocial = 3; IF (sf12=2) then SFSocial = 4; IF (sf12=1) then SFSocial = 5; IF (sf8=1) then SFPain = 1; IF (sf8=2) then SFPain = 2; IF (sf8=3) then SFPain = 3; IF (sf8=4) then SFPain = 4; IF (sf8=5) then SFPain = 5; IF (sf11r=5) then SFMental = 1; IF (sf11r=4) then SFMental=2; IF (sf11r=3) then SFMental=3; IF (sf11r=2) then SFMental=4; IF (sf11r=1) then SFMental=5; IF (sf10r=1) then SFVital = 1; If (sf10r=2) then SFVital = 2; If (sf10r=3) then SFVital = 3; If (sf10r=4) then SFVital = 4; If (sf10r=5) then SFVital = 5; Most=0; If (SFPhys=3) then Most=1; If (SFRole=3) then Most =1; If (SFRole=4) then Most=1; If (SFSocial=4) then Most=1; If (SFSocial=5) then Most=1; If (SFPain=4) then Most=1; If (SFPain=5) then Most=1; If (SFMental=4) then Most=1; If (SFMental=5) then Most=1; If (SFVital=4) then Most=1; If (SFVital=5) then Most=1; *scoring using consistent version of model 10 (See manual) - mean model with interaction term*; If (SFPhys=1) then pf1=0; IF (SFPhys=2) then pf1 = -.045; IF (SFPhys=3) then pf1 = -.045; If (SFRole=1) then rl1=0; IF (SFRole=2) then rl1 = -.063; IF (SFRole=3) then rl1 = -.063; IF (SFRole=4 ) then rl1 = -.063; IF (SFSocial=1) then sc1=0; IF (SFSocial=2) then sc1=-.063; IF (SFSocial=3) then sc1=-.066; IF (SFSocial=4) then sc1=-.081; IF (SFsocial=5) then sc1=-.093; If (SFPain=1) then pn1=0; IF (SFPain=2) then pn1 = 0; IF (SFPain=3) then pn1 = -.042 ; IF (SFPain=4 ) then pn1 = -.077 ; IF (SFPain=5) then pn1 = -.137 ; If (SFMental=1) then mh1=0; IF (SFMental=2) then mh1 = -.059; IF (SFMental=3) then mh1 = -.059; IF (SFMental=4 ) then mh1 = -.113; IF (SFMental=5) then mh1 = -.134; IF (SFVital=1) then v1 =0; IF (SFVital=2) then v1 = - 0.078; IF (SFVital=3) then v1 = -.078; IF (SFVital=4 ) then v1 = -.078; IF (SFVital=5) then v1 = -.106; If (Most=0) then mst1=0; If (most=1) then mst1=-.077; SF6D = 1 + pf1+rl1+sc1+pn1+mh1+v1+mst1; LABEL SF6D='Brazier-SF6D'; DROP RAND SF10R SF11R sf1-sf12 SFPhys SFRole SFsocial SFPain SFMental SFVital pf1 rl1 sc1 pn1 mh1 v1 mst1 MOST;