* (Вопрос) Как можно автоматически удалить переменные, все непропущенные значения которых равны нулю?
* (Ответ) Размещён в SPSSX-L. Автор: Raynald Levesque, 09.01.2004.
* Сохраняем перечень исследуемых переменных в макрос и затем выполняем синтаксис.
define !varlist()v1 v2 v3!enddefine.
data list list / v1 v2 v3.
begin data
0 . 1
1 0 1
0 0 0
0 0 0
end data.
save outfile='c:\\temp\\data.sav'.
compute nobreak=1.
aggregate outfile='c:\\temp\\file1.sav'
/pre
/break=nobreak
/!varlist=MAX(!varlist).
aggregate outfile=*
/pre
/break=nobreak
/!varlist=MIN(!varlist).
add files file=*
/file='c:\\temp\\file1.sav'.
execute.
aggregate outfile=*
/pre
/break=nobreak
/!varlist=SUM(!varlist).
flip.
select if var001=0.
do if $casenum=1.
- write outfile='c:\\temp\\delete var.sps' /'add files file=* /drop='case_lbl.
else.
- write outfile='c:\\temp\\delete var.sps' /' 'case_lbl.
end if.
execute.
get file='c:\\temp\\data.sav'.
include 'c:\\temp\\delete var.sps' .
execute.