×

SAS 教程

SAS 概述SAS 程序结构SAS 基本语法SAS 数据集SAS 变量SAS 字符串SAS 数组SAS 数字格式SAS 运算符SAS 循环SAS 决策SAS 功能SAS Input 输入方法SAS 宏SAS Date Times 日期时间

SAS 数据集操作

SAS 写入数据集SAS 连接数据集SAS 合并数据集SAS 子集数据集SAS 数据集排序SAS 格式数据集SAS SQLSAS ODSSAS 模拟SAS 读取原始数据

SAS 数据展示

SAS 直方图SAS 条形图SAS 饼图SAS 散点图SAS 箱线图

SAS 基本统计程序

SAS 线性回归SAS Bland Altman分析SAS 卡方SAS Fisher精确测试SAS 算术平均值SAS 重复测量分析SAS 标准偏差SAS 单因素方差分析SAS 频率分布SAS 假设检验SAS 交叉表格SAS T检验SAS 相关性分析

SAS 相关资源

SAS 讨论SAS 有用的资源SAS 相关问题与解答

SAS 数据集排序


SAS中的数据集可以对其中存在的任何变量进行排序。 这有助于在数据分析和执行其他选项,如合并等。排序可以发生在任何单个变量以及多个变量。 用于在SAS数据集中执行排序的SAS过程被称为PROC SORT。 排序后的结果存储在新数据集中,原始数据集保持不变。

语法

SAS中数据集中排序操作的基本语法是:

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

以下是使用的参数的描述:

  • 变量名是排序发生的列名。
  • 原始数据集是要排序的数据集名称。
  • 排序的数据集是排序后的数据集名称。

让我们考虑包含组织的员工详细信息的以下SAS数据集。 我们可以使用以下代码对工资数据集进行排序。

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 ; 

当执行上面的代码,我们可以得到下面的输出。

反向排序

默认排序选项按升序排列,这意味着观察值按排序变量的较低值到较高值排列。 但我们也可能希望排序以升序发生。

在下面的代码中,通过使用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 ; 

当执行上面的代码,我们可以得到下面的输出。

排序多个变量

通过在BY语句中使用它们,可以对多个变量应用排序。 变量以从左到右的优先级排序。

在下面的代码中,数据集首先在变量名称上排序,然后在变量名称salary上排序。

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 ; 

当执行上面的代码,我们可以得到下面的输出。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)