2014-12-18 3 views
1

나는 날짜가 06/May/2014와 같은 문자로 표시된 기괴한 상황이 있습니다. 다음과 같이 나는 SAS 날짜로 변환 해요 :SAS에서 날짜 변환 관련 문제

내가 출력 변수 무엇을 얻을
data ae; 
    set ae; 
    format aestdt date10.; 
    aestdt=input(aestdat,date9.); 
    put aestdt=YYMMDD10.; 
run; 

날짜의 연도를 변화 2014 년 2020에 따라서 위의 예에서, 내가 06MAY2020를 얻을. 모든 달과 일이 바뀌어서 왜 내게 변화가 일어나는 지 알 수 없습니다. 어떤 아이디어?

+1

압축 기능을 사용하면 날짜를 먼저 삭제할 수 있습니다. 입력 (compress (aestdat, '/'), date9.) – Reeza

+2

@Reese 왜 그렇게해야합니까? SAS의 가장 큰 장점 중 하나는 바로 그러한 일을하고자하는 것입니다! – Joe

+1

내 시스템에 약물이 너무 많습니다. – Reeza

답변

4

date9.으로 가져 왔기 때문입니다. 정보 내의 9how many characters do we look at to create this number?을 의미합니다. 06/MAY/2014에는 9 자 11자를 포함하고 있지 않습니다.

data ae; 
    aestdat='06/MAY/2014'; 
    format aestdt date10.; 
    aestdt=input(aestdat,date11.); 
    put aestdt=YYMMDD10.; 
run; 

예상되는 결과를 제공합니다.