(完整版)SAS程序汇总
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
SAS基础 (2)
创建数据集 (2)
其他软件产生的标准格式文件与SAS数据集之间的互相转换。 (2)
从外部文件(文本文件)读取数据 (2)
排序 (4)
计算产生新变量 (4)
数据集的拆分 (4)
数据集的合并 (5)
纵向连接 (5)
横向合并 (5)
计量资料的描述 (6)
计算几何均数 (6)
制作频数表 (6)
单变量描述 (7)
多变量描述 (8)
两样本均数的比较 (9)
单一总体均数的可信区间 (9)
两总体均数相差的可信区间 (9)
单样本均数的t检验 (10)
原始数据已知-ttest (10)
原始数据未知 (10)
配对资料两样本均数比较的t检验 (11)
MEANS (12)
UNIVARIATE (12)
TTest (12)
成组资料两样本均数比较的t检验 (13)
两样本均数的等效性检验 (13)
完全随机设计资料的方差分析 (14)
相关 (15)
绘制散点图 (15)
绘制分层散点图 (17)
Pearson相关系数及其置信区间的计算 (17)
Spearman相关系数的计算 (18)
简单线性回归 (18)
简单线性回归方程的估计及假设检验 (18)
绘制回归直线置信带、预测带 (19)
根据输出的残差数据绘制残差图 (19)
多变量回归分析 (20)
卡方检验 (21)
独立四格表资料的卡方检验 (21)
配对四格表资料率的比较的卡方检验 (22)
R*C表资料的卡方检验 (23)
关联性分析 (24)
基于秩次的非参数检验 (25)
配对样本的符号秩和检验 (25)
单样本的符号秩和检验 (25)
两独立样本的秩和检验 (26)
多组独立样本的秩和检验 (28)
随机区组样本的秩和检验 (28)
Logistic回归与生存分析 (29)
Logistic回归 (29)
二分类Logistic回归 (29)
有序LOGISTIC回归 (31)
多分类LOGISTIC回归 (31)
生存分析 (32)
寿命表方法进行生存率的估计 (32)
K-M法进行生存率的估计 (33)
Cox回归 (34)
SAS基础
创建数据集
其他软件产生的标准格式文件与SAS数据集之间的互相转换。
libname c "F:\郑亚_32620151151279";
Proc import datafile='E:\data1_1.xls' dbms=excel replace out=c.
data1_1_32620151151279;
/*sheet=”sheet1$” */
Run;
从外部文件(文本文件)读取数据
DATA b;
INFILE 'E:\SYS.TXT';
INPUT ID GENDER $ AGE BLOOD $ SURT;
RUN;
DATA A;
INPUT ID GENDER $ AGE BLOOD $ SURT;
/*ID 等为变量名,$表示其前面的那个变量为字符型变量*/
DATALINES; /*引出数据行*/
1 M 41 A 368
2 M 26 B 745
3 F 35 B 401
4 M 47 AB 552
5 F 37 A 478
6 F 39 O 628
7 M 28 O 549
8 M 31 B 128
9 M 43 AB 463
10 M 29 A 512
;
ODS HTML FILE='E:\RESULT.xls';
/* 将以下SAS输出结果存放到EXCEL文件中*/ PROC PRINT DATA=A;
RUN;
ODS HTML CLOSE;/*关闭对外输出系统*/
PROC FORMAT;
VALUE GE 1='M'2='F'; /*定义值标签*/ VALUE BL 1='A'2='B'3='AB'4='O'; DATA A;
INPUT ID GENDER AGE BLOOD SURT; DATALINES;
1 1 41 1 368
2 1 26 2 745
3 2 35 2 401
4 1 47 3 552
5 2 37 1 478
6 2 39 4 628
7 1 28 4 549
8 1 31 2 128
9 1 43 3 463
10 1 29 1 512
;
RUN;
ODS HTML FILE='E:\RESULT.xls' ; PROC PRINT DATA=A;
FORMAT GENDER GE.; /*借用值标签*/ FORMAT BLOOD BL.;
RUN;
ODS HTML CLOSE;
排序
Proc sort data=a out=b; by age;
Run;
Proc sort data=a out=c; by descending age; Run;
计算产生新变量
DATA B; SET A;
打开数据集B,并从数据集A读入数据。
DATA D;
FORMAT SURT_Y 5.3;
SET A;
SURT_Y=SURT/365;
IF AGE>40THEN AGROUP=1;
ELSE AGROUP=2;
RUN;
数据集的拆分
DATA A;
INPUT ID GENDER $ AGE BLOOD $ SURT; DATALINES; /*引出数据行*/
1 M 41 A 368
2 M 26 B 745
3 F 35 B 401
4 M 47 AB 552
5 F 37 A 478
6 F 39 O 628
7 M 28 O 549
8 M 31 B 128
9 M 43 AB 463
10 M 29 A 512
;DATA B C;
SET A;
IF GENDER='F'THEN OUTPUT B;
ELSE OUTPUT C;
RUN;DATA B(DROP=GENDER) C(DROP=BLOOD);
SET A;
RUN;