PROC SORT DATA=輸入數據集 <OUT=輸出數據集><選項>;
BY 關鍵變量;
RUN;
PROC SORT 語法如上,其中在尖括號中的可以不出現,也不會報錯。
選項中常用的有兩種NODUPKEY和NOUNIQUEKEY。
功能可以由字面意思幫助記憶,NO-沒有,DUP-重復,KEY-關鍵變量,,,合起來就是數據集中指定的關鍵變量不重復,
其功能也一樣,,去除重復的關鍵變量,這里的關鍵變量就是指跟在關鍵字BY后面的變量;還有一個對應的DUPOUT=選項用來輸出被該(NODUPKEY)剔除的觀測數據。
例如:
PROC SORT DATA=ABC OUT=ABC1 DUPOUT=ABC2 NODUPKEY;
BY ID;
RUN;
這里的ABC1數據集就是關於源數據集ABC中關於ID不重復的數據集(重復的觀測只保留第一條),而ABC2則是存放重復ID的重復部分。
還有一個常用選項NOUNIQUEKEY,同樣可以幫助記憶 NO-沒有,UNIQUE-唯一, KEY-關鍵變量,,,合起來就是數據集中的關鍵變量不唯一;
功能呢個就是保留數據集中關於關鍵變量有多條觀測的數據,還有一個對應的選項 UNIQUEOUT=選項用來輸出關於關鍵變量的觀測數據唯一的的部分。
例如;
PROC SORT DATA=ABC UNIQUEOUT=ABC3 OUT=ABC4 NOUNIQUEKEY;
BY KEY;
RUN;
這里輸出的ABC3是關於KEY唯一的觀測數據,而ABC4存放的就是關於key不唯一的觀測數據.