我有一個名爲coaches_assistants
的SAS數據集,其結構如下。每TeamID
總是隻有兩條記錄。從SAS中的多個記錄創建單個記錄
TeamID Team_City CoachCode
123 Durham Head_242
123 Durham Assistant_876
124 London Head_876
124 London Assistant_922
125 Bath Head_667
125 Bath Assistant_786
126 Dover Head_544
126 Dover Assistant_978
... ... ....
我想如何處理此要做的是創建一個數據集有一個額外的字段名爲AssistantCode
,並使它看起來像:
TeamID Team_City HeadCode AssistantCode
123 Durham 242 876
124 London 876 922
125 Bath 667 786
126 Dover 544 978
... ... ... ...
如果可能的話,我願意做的這在一個單獨的DATA步驟中(儘管我知道我可能首先需要一個PROC SORT步驟)。我知道如何用python或ruby或任何傳統的腳本語言來做到這一點,但我不知道如何在SAS中做到這一點。
這樣做的最好方法是什麼?
感謝您的詳細信息。我採用第一種方法,它像一個魅力。我還沒有深入研究SAS SQL,所以稍後我會在有機會的時候看看它。 – Clay
在第一個代碼示例中,「IF LAST.TeamID」是做什麼的? – Clay
在數據步驟處理中使用「BY」語句時,會自動創建特殊變量以協助處理。爲語句中列出的每個變量創建兩個「點」變量:「FIRST.variable」和「LAST.variable」,它們標識組中obs的相對位置。 '如果LAST.TeamID;'是一個「subsetting-IF」語句,用於每個TeamID只輸出一個obs。 – BellevueBob