2016-09-23 41 views
1

我必須merge兩個數據集中的SAS其中一個關鍵變量是lentgh爲10(例如)的數字。如果數字少於10,我有一個可變數量的零。例如00000056471。 而在其他數據集中,數字只是56471。我想在第二個數據集中創建另一個變量,添加變量數爲零並將其用作merge的關鍵變量。如何創建一個具有可變數量的零的數字作爲第一個SAS

我該如何解決?

預先感謝

回答

0

有三種方法可以使用:可用here Zw.d格式

data have; 
input ID $10. ; 
cards; 
143134 
12 
14356677 
12f 
oh dear 
;run; 

data want; 
    set have; 
    /* if numeric then convert to number and back using z10 format */ 
    newID=put(input(ID,8.),$z10.); 
    /* if alphanumeric, right align then replace spaces (will replace ALL spaces) */ 
    newID2=translate(right(ID),'0',' '); 
    /* probably the best method */ 
    newID3=repeat('0',10-length(ID)-1)||ID; 
run; 

文檔。

+0

謝謝。問題是這個變量是字符,它必須保持字符,因爲在另一個數據集中變量是字符(還有字母數字值)。 – TheZone

+0

答案更新! –

相關問題