Замена значений, превосходящих x, на среднее по прочим значениям
Смотрите свежую версию этого синтаксиса (адаптированную к новым версиям SPSS, проверено в IBM SPSS Statistics 24).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | * Тема: замена значений, превосходящих определённую величину, средним по оставшимся значениям. * Ключевые слова: замена, среднее, условие. * Опубликован: 16.06.2008. * Автор: Ray. * Перевод: А. Балабанов. * (Вопрос) Как мне можно заменить значения переменной hrt, которые превосходят 480, средним значением, подсчитанным по значениям той же переменной, не превосходящим 480?. * (Ответ) Размещён в новостной группе spss, автор: Ray, 17.04.2002. * http://www.spsstools.net. * Пример данных. DATA LIST LIST /hrt clientid linenum. BEGIN DATA 485 1002 1 280 1002 2 100 1002 3 420 1002 4 410 1002 5 510 1002 6 END DATA. LIST. * Решение. SAVE OUTFILE='c:\temp\ori data.sav'. SELECT IF hrt<=480. COMPUTE nobreak=1. AGGREGATE /OUTFILE='C:\temp\mean.sav' /BREAK=nobreak /meanhrt = MEAN(hrt). GET FILE='c:\temp\ori data.sav'. COMPUTE nobreak=1. MATCH FILES /FILE=* /TABLE='C:\temp\mean.sav' /BY=nobreak. IF hrt>480 hrt=meanhrt. * Удаляем ненужные переменные. ADD FILES FILE=* /DROP=meanhrt nobreak. |