SDQ: Predictive Algorithm in SPSS
The predictive algorithm is based on up to twelve input variables:
phyper | = | SDQ hyperactivity score from parent SDQ |
thyper | = | SDQ hyperactivity score from teacher SDQ |
shyper | = | SDQ hyperactivity score from self-report SDQ |
pconduct | = | SDQ conduct problems score from parent SDQ |
tconduct | = | SDQ conduct problems score from teacher SDQ |
sconduct | = | SDQ conduct problems score from self-report SDQ |
pemotion | = | SDQ emotional symptoms score from parent SDQ |
temotion | = | SDQ emotional symptoms score from teacher SDQ |
semotion | = | SDQ emotional symptoms score from self-report SDQ |
pimpact | = | SDQ impact score from parent SDQ |
timpact | = | SDQ impact score from teacher SDQ |
simpact | = | SDQ impact score from self-report SDQ |
The algorithm generates four output variables:
sdqed | = | prediction of an emotional disorder (0 = unlikely, 1 = possible, 2 = probable) |
sdqcd | = | prediction of a conduct disorder (0 = unlikely, 1 = possible, 2 = probable) |
sdqhk | = | prediction of a hyperactivity disorder (0 = unlikely, 1 = possible, 2 = probable) |
anydiag | = | prediction of any psychiatric disorder (0 = unlikely, 1 = possible, 2 = probable) |
set format=f8.0 .
compute varmis = 0.
recode varmis (0=sysmis).
execute.
if (phyper ge 0 and pimpact ge 0) phk=0.
if (phyper ge 6 and pimpact ge 1) phk=1.
if (phyper ge 7 and pimpact ge 2) phk=2.
if (phyper ge 9 and pimpact ge 1) phk=2.
execute.
if (shyper ge 0 and simpact ge 0) shk=0.
if (shyper ge 6 and simpact ge 1) shk=1.
if (shyper ge 7 and simpact ge 2) shk=2.
execute.
if (thyper ge 0 and timpact ge 0) thk=0.
if (thyper ge 6 and timpact ge 1) thk=1.
if (thyper ge 7 and timpact ge 2) thk=2.
execute.
compute pshk=phk.
execute.
if (sysmis(phk)) pshk=shk.
execute.
if (phk ge 0 or shk ge 0 or thk ge 0) sdqhk=0.
if (pshk=2 or thk=2) sdqhk=1.
if (pshk=1 and thk=1) sdqhk=1.
if (pshk=1 and sysmis(thk)) sdqhk=1.
if (sysmis(pshk) and thk=1) sdqhk=1.
if (pshk=2 and thk=1) sdqhk=2.
if (pshk=2 and thk=2) sdqhk=2.
execute.
if (pconduct ge 0 or tconduct ge 0 or sconduct ge 0) sdqcd=0.
if (pconduct ge 4 or tconduct ge 3 or sconduct ge 5) sdqcd=1.
if (pconduct ge 5 and pimpact ge 2) sdqcd=2.
if (tconduct ge 4 and timpact ge 2) sdqcd=2.
if (sconduct ge 6 and simpact ge 2) sdqcd=2.
if (sysmis(pimpact) and sysmis(timpact) and sysmis(simpact)) sdqcd = varmis.
execute.
if (pemotion ge 0 or temotion ge 0 or semotion ge 0) sdqed=0.
if (pemotion ge 5 and pimpact ge 1) sdqed=1.
if (temotion ge 5 and timpact ge 1) sdqed=1.
if (semotion ge 6 and simpact ge 1) sdqed=1.
execute.
compute pem= 0.
if (pemotion ge 6 and pimpact ge 2) pem=1.
execute.
compute tem= 0.
if (temotion ge 6 and timpact ge 2) tem=1.
execute.
compute sem= 0.
if (semotion ge 7 and simpact ge 2) sem=1.
execute.
compute allem= pem + tem + sem.
if (allem ge 1) sdqed=2.
if (allem=1 and sdqcd=2) sdqed=1.
if (allem=1 and sdqhk=2) sdqed=1.
if (sysmis(pimpact) and sysmis(timpact) and sysmis(simpact)) sdqed = varmis.
execute.
if (sysmis(sdqed) and sysmis(sdqcd) and sysmis(sdqhk)) anydiag = varmis.
if (sdqed ge 0 or sdqcd ge 0 or sdqhk ge 0) anydiag=0.
if (sdqed ge 1 or sdqcd ge 1 or sdqhk ge 1) anydiag=1.
if (sdqed ge 2 or sdqcd ge 2 or sdqhk ge 2) anydiag=2.
execute.
delete variables varmis phk shk thk pshk pem tem sem allem.
|