Olá pessoal! Estou estudando curso SAS Programming I: Essentials e uma das aulas me deixou com a pulga atrás da orelha. Nos foi apresentado o código abaixo para mostrar como funciona o fluxo da condição, porém minha querida professora Stacey disse o seguinte sobre o código, no vídeo e na descrição:
The last assignment statement determines the value of PressureGroupo when MinPressure is missing
data storm_new;
set pg1.storm_summary;
keep Season Name Basin MinPressure PressureGroup;
if MinPressure =. then PressureGroup=.;
if MinPressure <= 920 then PressureGroup=1;
if MinPressure > 920 then PressureGroup=0;
run;
Resumidamente na aula ela disse que a última instrução é que determina o valor da coluna PressureGroup quando o valor de MinPressure é missing.
A primeira condição atribui corretamente um ponto à coluna quando o valor da expressão for missing, até aí tudo certo. A segunda condição sobrescreve o valor atribuído na condição anterior, fazendo com que os valores missing assumissem o valor 1, pois missing é menor que o valor procurado. No entanto, o trecho diz "The last" ou seja, a última expressão é quem irá determinar o valor da coluna quando a condição for igual a missing.
Observando a tabela de resultado, se a última expressão determina o valor da coluna quando a condição é missing, porque tanto os valores abaixo de 920 quanto os missing estão com valor 1 na coluna PressureGroup? Para que esta afirmação seja verdadeira o valor de missing para PressureGroup não deveria ser 0, segundo a afirmação?
Para tentar entender melhor minha questão deixo um arquivo no formato PDF com alguns detalhes para melhor compreensão da questão.
Desde já agradeço pela atenção e ajuda!