это звучит как работа для питона.Обычно это лучшее решение для такой работы в SPSS.
Итак, вот фреймворк, который может вам помочь.Я ужасно незнаком с ROC-анализом, но этот общий шаблон применим ко всем видам циклических циклов:
begin program.
import spss
for i in range(spss.GetVariableCount()):
var = spss.GetVariableName(i)
cmd = r'''
* your variable-wise analysis goes here --> use spss syntax, beetween the three ' no
* indentation is needed. since I dont know what your syntax looks like, we'll just
* run descriptives and frequencies for all your variables as an example
descriptives %(var)s
/sta mean stddev min max.
fre %(var)s.
'''%locals()
spss.Submit(cmd)
end program.
Просто чтобы быстро перейти к тому, что это делает: В строке 4 мы говорим spss сделать следующеестолько раз, сколько переменных в активном наборе данных, 989 в вашем случае.В строке 5 мы определяем переменную (python) с именем var, которая содержит имя переменной переменной с индексом i (от 0 до 988 - первая переменная в наборе данных, имеющая индекс 0).Затем мы определяем команду для выполнения spss.Мне нравится помещать это в необработанные строки, потому что это упрощает такие вещи, как предоставление каталогов.Необработанная строка определяется r '' 'и оканчивается на' ''.в строке 12. spss.Submit (cmd) дает команду, определенную после «cmd =», для spss для выполнения.Самое главное, что всякий раз, когда имя переменной будет появляться в вашем синтаксисе, заменяйте его на «% (var) s»
Если вы включили «set mprint on».строка над «начать программу».вы точно увидите, что он делает в программе просмотра.