2016-09-30 57 views
1

我是一個總的SAS-noobie。我希望你能幫我解決這個問題。 我有159個觀測數據集。所有的觀測值都有一個id號(變量= id)。數字68丟失。我想將id = 160更改爲id = 68,因此觀察值的數量與id號碼一致。有誰知道如何做到這一點? 我的數據集看起來是這樣的:更換觀察數與另一個

obs: id: 
    ... ... 
    67 67 
    68 69 
    69 70 
    ... ... 
    159 160 

所以來闡述我想改變行實測值= 159,ID = 160排實測值= 68,ID = 68。

我嘗試:

如果觀測值= 159然後ID = 68;

這沒有幫助: -/

在此先感謝!

+0

請詳細說明您 - 再見點評 –

回答

0

希望我理解正確,您嘗試完成的任務: 「在列更改值ID

見例如:

DATA survey; 
INPUT id sex $ age inc r1 r2 r3 ; 
DATALINES; 
1 F 35 17 7 2 2 
81 M 44 11 7 7 7 
2 F 34 17 6 5 3 
18 M 40 14 7 5 2 
34 F 47 6 6 5 6 
160 M 35 17 5 7 5 
; 

proc print data=survey; *print the dataset survey created as you can  see that 160 is in original dataset; 

data recode; 
set survey; 
if id=160 then id=68; 
run; 

PROC SORT DATA=recode OUT=surveysorted ; *sort the data; 
BY id ; 
RUN ; 

PROC PRINT DATA=surveysorted ; *print new sorted dataset; 
RUN ; 

輸出:**output for proc print data=survey; and proc print DATA=surveysorted;**

+0

好了,它的工作原理的問題!我早些時候嘗試過,但無法使其工作。我必須以某種方式輸入錯誤。非常感謝你的幫助! – mmbc

+0

@mmbc歡迎您。請接受答案。 – sb0709

0

如果你想修改基於表中觀察順序的數值比應該輸入:

if _N_=159 then id=68; 

這隻有在數據的一步。

希望這有助於

MK

相關問題