整个SAS程序结构可以分为两个部分,数据data步与过程proc步
data步
1 输入数据(包括手动输入数据、从文本文件中导入数据)
a使用手动方法输入数据基本形式是:
Data 数据集;
Input 变量名(包括格式设置);
其他语句;
Cards ;
数据;
Run;
b使用文本文件导入法基本形式是:
Data 数据集;
变量属性设定;
Infile‘文件地址’(firstobs=,obs= ,missover);
Input;
其他语句;
Run;
当然输入数据的时候可以直接使用sas导入数据选项,根据情况设定形式,导入数据。
c总之在data步中常见的语句有:
- DATA语句
- PUT语句——输出语句
- SET语句——读取观测语句
- ATTRIB语句——设定变量属性
- 赋值语句——计算SAS表达式,给变量赋值
- DROP语句——删除变量语句
- KEEP语句——保留变量语句
- IF语句——条件语句
- DO-END语句——循环语句
- DELETE语句——删除语句
- OUTPUT语句——输出到数据集语句
- COMMENT语句——注释语句
- ARRAY语句——数组语句
在实际操作中,可以灵活的使用这些语句实现数据处理。
2:同时在数据步中可以使用语句实现数据集的加工、合并和拼接
a数据集排序
PROC SORT OPTIONS ;
BY 〔DESCENDING〕变量名列表 ;
END;
b数据集串联
Concatenate方式
Data 新数据集;
Set 输入数据集1 输入数据集2 ……;
Run;
Interleave方式:
Data 新数据集;
Set 输入数据集1 输入数据集2 ……;
By by-variables ;
Run;
c数据集并联
MERGE (一对一合并)
DATA 新数据集;
MERGE 输入数据集1 输入数据集2 ……;
RUN;
MATCH MERGE(匹配合并)
DATA 新数据集;
MERGE 输入数据集1 输入数据集2 ……;
BY by-variables ;
RUN;
d修改数据集
modify
data主数据集名称;
modify 主数据集名称 更新数据集名称 ;
run;
Update
data 数据集名称
update 主数据集名称 更新数据集名称 ;
by变量名称;
run;
Proc步
该过程常用的sas语句有:
- VAR语句—指定分析变量
- MODEL语句—指定统计建模的模型
- BY语句—指定分组变量
- CLASS语句—指定分类变量
- OUTPUT语句—指定输出结果存放的数据集
- FREQ语句—指定一个重复数变量
- WEIGHT语句—指定一个权重变量
- ID语句—指定用来标识观测的变量
- WHERE语句—选择输入数据集的一个行子集进行分析
- LABEL语句—为变量指定一个临时标签
- FORMAT语句—为变量输出规定一个输出格式
1:使用proc print语句输出表格
PROC FORMAT;
VALUE ;
PROC PRINT DATA 数据集 SPLIT='*' ;
ID 变量名;
VAR 变量列表;
WHERE 条件表达式…;
SUM 变量序列;
BY 变量名;
PAGEBY 变量序列;
TITLEn '语句';
FOOTNOTEn语句';
LABEL 变量1= ‘label(标*签)’ ……;
FORMAT ;
RUN;
2:使用proc tabulate语句输出汇总表格
PROC FORMAT;
VALUE ;
PROC TABULATE data 数据集 options;
CLASS ;
VAR ;
FORMAT ;
TABLE page-v,row-v,colum-v / options;
KEYLABEL ;
TITLEn'语句';
FOOTNOTEn语句';
LABEL 变量1= ‘label(标*签)’ ……;
RUN;
3:使用proc gplot语句绘制散点及折线图
PROC GPLOT DATA=数据集;
PLOT 纵坐标变量*横坐标变量/选项;
SYMBOL V=I=W=C=;
LABEL ; 变量1= ‘label(标*签)’ ……;
TITLE C=颜色 H=高度及单位 F=字体;
FOOTNOTE C=颜色 H=高度及单位 F=字体;
RUN;
4:使用proc gcharts语句绘制饼图及柱状图
PATTERN c=颜色 v=花纹;
PROC GCHART DATA=数据集;
VBAR|HBAR|PIE|STAR|BLOCK
分类变量名列/选项;
MIDPOINT=列举值 SUMVAR=变量名TYPE=FREQ|SUM|MEAN|PCT GROUP=变量名SUBGROUP=变量名FILL=S(SOLID)|X(CROSS)*/
LABEL ; 变量1= ‘label(标*签)’ ……;
TITLE C=颜色 H=高度及单位 F=字体;
FOOTNOTE C=颜色 H=高度及单位 F=字体;
RUN;
5:使用proc univariate、means、freq语句进行定量资料的统计描述
PROC UNIVARIATE DATA= 数据集名 options;
VAR 变量名列 ;
BY 变量名列;
FREQ 变量名;
WEIGHT 变量名;
ID 变量名;
OUTPUT OUT= 数据集名
关键字= 新变量名列...
pctlpts=百分位数, ...
pctlpre=新变量名列;
Run;
PROC MEANS [ DATA= 数据集名 选项 统计量关键字列表;
VAR 变量名列;
BY 变量名列;
CLASS 变量名列;
FREQ 变量名;
WEIGHT 变量名;
ID 变量名列;
OUTPUT OUT= 数据集名 关键字= 新变量名列... ;
Run;
PROC FREQ data+;
TABLES 请求式/ 选项;
WEIGHT 变量名;
BY 变量名列;
Run;
6:使用proc corr过程进行相关系数计算(相关关系散点图可以参照gplot语句)
PROC CORR DATA=数据集 OPTIONS;
VAR 变量名列;
WITH 变量名列;
PARTIAL 变量名列;
RUN;
7:使用proc reg过程进行回归分析
PROC REG DATA= 数据集名 OPTIONS;
VAR 变量名列;
BY 变量名列;
FREQ 变量名列;
MODEL 因变量=自变量/OPTIONS;
OUTPUT OUT=数据集名 关键字=新变量名列;
RUN;
PROC GPLOT DATA=数据集 ;
PLOT 纵轴变量名*横轴变量名;
SYMBOL V=符号 C=颜色 I=none|rl|rq|rc
其他选项;
RUN;
SAS.9.2多国语言版完美破解方法