SAS - Sắp xếp tập dữ liệu

Các tập dữ liệu trong SAS có thể được sắp xếp theo bất kỳ biến nào có trong chúng. Điều này giúp cả trong phân tích dữ liệu và thực hiện các tùy chọn khác như hợp nhất, v.v. Việc sắp xếp có thể xảy ra trên bất kỳ biến đơn lẻ nào cũng như nhiều biến. Thủ tục SAS được sử dụng để thực hiện việc sắp xếp trong tập dữ liệu SAS được đặt tên làPROC SORT. Kết quả sau khi sắp xếp được lưu trong tập dữ liệu mới và tập dữ liệu ban đầu không thay đổi.

Cú pháp

Cú pháp cơ bản cho thao tác sắp xếp trong tập dữ liệu trong SAS là:

PROC SORT DATA = original dataset OUT = Sorted dataset;
   BY variable name;

Sau đây là mô tả về các tham số được sử dụng:

  • variable name là tên cột mà quá trình sắp xếp diễn ra.

  • Original dataset là tên tập dữ liệu được sắp xếp.

  • Sorted dataset là tên tập dữ liệu sau khi nó được sắp xếp.

Thí dụ

Hãy xem xét tập dữ liệu SAS sau đây chứa thông tin chi tiết về nhân viên của một tổ chức. Chúng ta có thể sắp xếp tập dữ liệu về tiền lương bằng cách sử dụng đoạn mã dưới đây.

DATA Employee; 
   INPUT empid name $ salary DEPT $ ; 
DATALINES; 
1 Rick 623.3	IT 		 
2 Dan 515.2 	OPS	
3 Mike 611.5 	IT 	
4 Ryan 729.1    HR 
5 Gary 843.25   FIN 
6 Tusar 578.6   IT 
7 Pranab 632.8  OPS
8 Rasmi 722.5   FIN 
;
RUN;

PROC SORT DATA = Employee OUT = Sorted_sal ;
   BY salary;
RUN ;
 
PROC PRINT DATA = Sorted_sal;
RUN ;

Khi đoạn mã trên được thực thi, chúng ta nhận được kết quả sau.

Sắp xếp ngược lại

Tùy chọn sắp xếp mặc định theo thứ tự tăng dần, có nghĩa là các quan sát được sắp xếp theo giá trị thấp hơn đến cao hơn của biến được sắp xếp. Nhưng chúng tôi cũng có thể muốn việc sắp xếp xảy ra theo thứ tự tăng dần.

Thí dụ

Trong đoạn mã dưới đây, sắp xếp ngược lại bằng cách sử dụng câu lệnh DESCENDING.

DATA Employee; 
   INPUT empid name $ salary DEPT $ ; 
DATALINES; 
1 Rick 623.3	IT 		 
2 Dan 515.2 	OPS	
3 Mike 611.5 	IT 	
4 Ryan 729.1    HR 
5 Gary 843.25   FIN 
6 Tusar 578.6   IT 
7 Pranab 632.8  OPS
8 Rasmi 722.5   FIN 
;
RUN;

PROC SORT DATA = Employee OUT = Sorted_sal_reverse ;
   BY DESCENDING salary;
RUN ;
 
PROC PRINT DATA = Sorted_sal_reverse;
RUN ;

Khi đoạn mã trên được thực thi, chúng ta nhận được kết quả sau.

Sắp xếp nhiều biến

Sắp xếp có thể được áp dụng cho nhiều biến bằng cách sử dụng chúng với câu lệnh BY. Các biến được sắp xếp với mức độ ưu tiên từ trái sang phải.

Thí dụ

Trong đoạn mã dưới đây, tập dữ liệu được sắp xếp đầu tiên trên tên bộ phận biến và tiếp theo là tên biến số lương.

DATA Employee; 
   INPUT empid name $ salary DEPT $ ; 
DATALINES; 
1 Rick 623.3	IT 		 
2 Dan 515.2 	OPS	
3 Mike 611.5 	IT 	
4 Ryan 729.1    HR 
5 Gary 843.25   FIN 
6 Tusar 578.6   IT 
7 Pranab 632.8  OPS
8 Rasmi 722.5   FIN 
;
RUN;

PROC SORT DATA = Employee OUT = Sorted_dept_sal ;
   BY salary DEPT;
RUN ;
 
PROC PRINT DATA = Sorted_dept_sal;
RUN ;

Khi đoạn mã trên được thực thi, chúng ta nhận được kết quả sau.