문제

SAS에는 Oracle NVL 기능과 동등한 것이 있습니까?

예를 들어, SAS에 WHERE 절이있는 경우 :

where myVar > -2;

myvar =가있는 행을 포함하지 않을 것입니다.

결 측값을 0으로 취급하려면 다음과 같이 말해야합니다.

where myVar > -2 or missing( myVar )

나는 다음과 같은 일을 할 수 있기를 원합니다.

where NVL( myVar, 0 ) > -2 // or some SAS equivalent

SAS에는 이와 같은 것이 있습니까?

도움이 되었습니까?

해결책

그만큼 연합 기능 일을해야합니다.

where coalesce(myVar,0) > -2

SAS 9에서 함수를 사용할 수 있는지 확실하지 않으므로 실제로 오래된 SAS 버전이 있으면 작동하지 않을 수 있습니다.

다른 팁

Coalesce 기능을 사용하는 것이 올바른 방법입니다.

그러나 Coalesce가 구현되지 않은 이전 버전의 SAS가있는 경우이 트릭을 사용할 수 있습니다.

where sum(myVar,0) > -2

당신이 사용하는 경우 합 함수 추가하기위한 SAS에서는 합산에서 미지급 숫자가 발생하지 않으면 결과가 미끼가되지 않습니다.

따라서 합 함수와 함께 0을 추가하면 결 측값이 0으로 변환되며 비 이동 값은 변경되지 않은 상태로 유지됩니다.

Y가 할 수있는 한 가지는 배열 varlistname var1 var2 varn과 같은 것입니다. 배열 <>. 그런 다음 출력;

결 측값이없는 데이터 세트가 푸트됩니다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top