Я пытаюсь вычислить грандиозное значение подмножества наблюдений (например, наблюдение 20 для наблюдения 50) в шаг data
. В этом расчете я также хочу пропустить (игнорировать) любые отсутствующие значения.SAS: на этапе DATA, как вычислить грандиозное значение подмножества наблюдений, пропуская недостающие значения
Я попытался поиграть с функцией mean
, используя различные операторы if … then
, но, похоже, я не могу их комбинировать.
Любая помощь будет высоко оценена.
Для справки, вот основная схема моих шагов данных:
data sas1;
infile '[file path]';
input v1 $ 1-9 v2 $ 11 v3 13-17 [redacted] RPQ 50-53 [redacted] v23 101-106;
v1=translate(v1,"0"," ");
format [redacted];
label [redacted];
run;
data gmean;
set sas1;
id=_N_;
if id = 10-40 then do;
avg = mean(RPQ);
end;
/*Here, I am trying to calculate the grand mean of the RPQ variable*/
/*but only observations 10 to 40, and skipping over missing values*/
run;
Если вы делаете это с помощью шага данных, лучше всего показывать свой код, поскольку существует множество методов. В общем, я бы порекомендовал proc, поскольку он игнорирует отсутствующие значения по умолчанию. – Reeza
@Reeza Спасибо за ваш комментарий. Я добавил свой сокращенный код выше для справки. Обычно я также использую «proc», но в этом случае я ограничусь «шагом данных». – mrt
Ваш код не показывает, что вы пробовали. Ожидаете ли вы, что результат будет во всех рядах (10-40) или только в последней строке? – Reeza