上一頁|下一頁

TRANTAB 程序

範例 6: 使用不同的轉譯表格進行排序

功能:

PROC SORT 陳述式選項:SORTSEQ=

PRINT 程序

此範例顯示如何指定不同的轉譯表格,依與預設排序順序不同的順序來排序資料。以非美式英文的語言寫入的字元, 可能需要與預設順序不同的排序順序。
您可以使用「SAS 範例資料館」中的 TRABASE 程式來建立數種語言的轉譯表格。所有範例都是在 UNIX 環境中產生。
設定 SAS 系統選項。
options nodate pageno=1 linesize=80 pagesize=60;
建立 TESTSORT 資料集。DATA 步驟會建立內含四個文字配對的 SAS 資料集,每個配對只有第一個字母的大小寫不同。
data testsort;
input Values $10.;
datalines;
Always
always
Forever
forever
Later
later
Yesterday
yesterday
;
使用與預設排序順序不同的順序來排序資料。 PROC SORT 會根據預設轉譯表格來排序資料,先排序所有小寫字,然後再排序所有大寫字。
proc sort;
by values;
run;
列印資料集。 PROC PRINT 會列印排序的資料集。
proc print noobs;
title 'Default Sort Sequence';
run;

SAS 輸出

下列輸出是使用預設轉譯表格來排序值的輸出。 預設排序序列會先依字母順序來排序所有首字大寫字,再排序任何小寫字。
Default Sort Sequence 
1

Values

Always 
Forever 
Later 
Yesterday
always 
forever 
later 
yesterday
根據轉譯表格 UPPER 來排序資料,然後列印新的資料集。SORTSEQ= 選項指定 PROC SORT 根據自訂的轉譯表格 UPPER 來排序資料,將大寫與小寫字母視為相同。這個方法很適合用於進行不區分大小寫的排序。PROC PRINT 會列印排序的資料集。
proc sort sortseq=upper;
by values;
run;
proc print noobs;
title 'Customized Sort Sequence';
run;

SAS 輸出

下列輸出是使用自訂的轉譯表格來排序值的結果。 自訂的排序序列會依字母順序來排序所有單字,而不理會第一個字母的大小寫。
Customized Sort Sequence 2

Values

Always 
always 
Forever 
forever 
Later 
later 
Yesterday
yesterday
上一頁|下一頁|頁面頂端