2016-08-31 2 views
0

나는 다음과 같은 데이터 세트가 있습니다시작 부분에 0 값으로 숫자를 변환

DATA survey; 
INPUT zip_code number; 
DATALINES; 
1212 12 
1213 23 
1214 23 
; 
PROC PRINT; RUN; 

내가 다른 테이블에이 데이터를 연결할하지만 일이 다른 테이블의 번호는 다음과 같은 형식으로 저장되어 있다는 것입니다을 : 0012, 0023,

0023. 그래서 나는 다음 할 수있는 방법을 찾고 있어요 : 수는

  • 경우 얼마나 오래

    • 확인 렌 길이 = 2, 시작

    나는이 작업을 얻을 수있는 방법에 대한 생각에 2 개 0 값을 추가하는 경우 GTH는 = 1, 시작

  • 3 개 0 값을 추가?

  • 답변

    1

    당신은이 작업을 수행 할 수 z#. 형식을 사용할 수 있습니다

    DATA survey; 
    INPUT zip_code number; 
    DATALINES; 
    1212 12 
    1213 23 
    1214 23 
    9999 999 
    8888 8 
    ; 
    
    data survey2; 
        set survey; 
        number_long = put(number, z4.); 
    run; 
    
    +0

    다른 테이블의 숫자가 문자로 저장되는지 아니면 'z #'형식으로 저장되는지에 따라 다릅니다. – Longfish

    0

    당신이 긴 네 개의 문자로 필요한 경우에, 당신은 이런 식으로 그것을 할 수 :

    want = put(input(number,best32.),z4.); 
    
    2

    숫자가 그래서 만약 숫자 다른 테이블에는 번호가있는 필드가 있으므로 아무 것도 할 필요가 없습니다. 13 = 0013 = 13.00 = ....

    다른 테이블에 실제로 문자 변수가있는 경우 하나 또는 다른 문자를 변환해야합니다.

    char_number = put(number, Z4.); 
    number = input(char_number, 4.); 
    
    관련 문제