SAS数据步与过程步,数据步语句
http://www.biostatistic.net/thread-2045-1-1.html  ---转载---原文作者:biostar
(出处: 生物统计家园)

数据步与数据步语句

1.数据步基本概念
    数据步是产生数据集的一组语句。一个数据步可以建立一个或多个数据集。在一份程序中可以有多个数据步。数据步程序还可以对已建立了的数据集进行修改和产生输出。

2.程序变量与数据集变量
    SAS变量有程序变量与数据集变量。数据集的列也叫变量。

3. 数据步的三种基本结构
  (1)数据源是DOS数据文件
    如果数据源是一个DOS的ASCll码数据文件存储于磁盘来建立数据集,其数据步程序具有如下格式:
    DATA语句;
    INFILE语句;
    INPUT语句;
   [其它数据步语句;]
   ;
    第一行“DATA语句;”告诉系统数据步开始,并给出将要产生的数据集名字及其有关信息。
    第二行“INFILE语句;”中给出数据源文件的文件名等,执行该语句后,指定的DOS文件被打开。
    第三行“INPUT语句;”给出将要从打开的文件中读取值的程序变量名及其信息。
    第四行“[其它数据步语句;]”是指此处还可以写其它允许使用SAS数据步语句,此行的内容是可选的。一般情况下,由前三行就可以构成一个数据步。
    最后一行是一个分号,它是本数据步结束的信息。
(2)数据源在作业流中
格式:
    DATA语句;
    INPUT语句;
   [其它数据步语句;]
    CARDS;

  “输入数据行”(每一行中的数据用一个或多个空格分隔,每一行的行末无标点。通常,一行数据是客观实体的一个观测的原始数据。有自由型、列型、格式化型)
     
  (3)数据源是已存在的数据集
 利用已经建立了的数据集中的数据来产生新的数据集。

格式:
        FILENAME语句
       INFILE语句

  这个语句给出完整的DOS文件标识包括驱动器名、目录名、文件名和扩展名,
        一个文件标识可以唯一指定一个文件。

4、数据步程序控制语句

(1)GOTO 转向语句

格式:
    GOT 标号;

执行该语句后,程序控制转向程序中以GOTO后的而不是执行GOTO语句的下一行。
   (2)STOP 停止执行语句
        例:
        DATA a;
        INPUT X @@;
        IF x<0 THEN ST O P;
        CARDS;
         P R O C?PRINT;

(3) if 条件语句
       格式:
    IF 表达式 THEN
       当表达式的值为真时执行其后的SAS语句。

(4)RUN;
  执行前面的语句。

(5)多向选择语句
       格式:
        SELECT[(表达式 0)」;
        WHEN(表达式1)语句1;
        WHEN(表达式2)语句2;
         ......
         
                WHEN(表达式 n)语句n
        ......
        
        
   (6) DELETE语句
        格式:
    DELETE;
       语句的功能是当执行了DELETE语句后,该语句之后的语句将不被执行并且当前观察不送入数据集,而返回数据步的开始(即DATA语句的下一行),开始执行新的一遍数据步。
        DELETE语句与条件语句配合,可以实现用数据源的部分数据来建立数据集。
   (7) 循环语句
        SAS的循环语句有步长型、离散型、当型和直到型四种形式。

  此外还有其它的一些语句,将在以后的例题中逐一加以介绍。

SAS过程步

编号 过程名 功用 必要的语句
means 计算基本统计量 proc means;
var x;
run;
chart 制作次数分布表
次数分布图
proc chart;
hbar x;
run;
univariate plot 正态分布检验 proc univariate plot;
var x;
run;
PRINT 数 据 输 出 PROC PRINT ;
RUN;
SORT 数 据 排 序 PROC SORT;
BY age;
PROC PRINT;
RUN;
tabulate 制作表格 PROC PRINT;
Proc tabulate format=8.0;
Class repname month;
var unitsold;
table month,repname*unitsold*sum;
RUN;
anova; 单方面分类的方差分析 proc anova;
classes a;
model x = a;
 
anova 双方面分类的方差分析 proc anova;
classes block a;
model x =block a;
anova 三方面分类的方差分析 proc anova;
classes A B T;
model X1=A B T ;
 
10
可选择:
LSQ
duncan
duncan
多重比较
可选择:
LSQ测验
邓肯Q测验
图基Q测验
proc anova;
classes block a;
model x =block a;
means block a /LSQ alpha=0.05;
means block a /LSQ alpha=0.01;
11
anova 2*2 复因子试验的统计分析方法 proc anova;
classes block pinxi midu;
model x=block pinxi midu pinxi*midu;
12
anova; 2*2*2 复因子试验的统计分析方法 proc anova;
classes block k p n x;
model x=block k p n k*p k*n p*n k*p*n ;
 
13
glm 协方差分析 proc glm;
class t ;
model y=t x;
14
anova 多元方差分析 proc anova;
class block tre ;
model x1 x2 x3 =block tre;
manova h=block tre /summary;
run;
15
anova 正交设计的分差分析 proc anova;
classes block a b c d ;
model x = block a b c d ;
means block a b c d /lsd duncan tukey;
run;
16
nested 嵌套设计的方差分析 proc nested;
classes plant leaf;
var calcium;
run;
17
glm 带有交叉项的双向不均衡设计的方差分析 proc glm;
class drug disease;
model y=drug disease drug*disease /ss1 ss2 ss3 ss4;
run;
18
corr 简 单 相 关 系 数 proc corr;
var y;with x1;
run;
19
corr 一个变量与多个变量的简单相关系数 proc corr;
var y;with a b c d e f ;
run;
20
corr 多个变量间的简单相关系数的计算 proc corr;
run;
21
plot 相关点式图的绘制 plot y*x='+';
rproc plot;
un;
22
corr,partial 一 级 净 相 关 proc corr;
var y;with a; partial f;
run;
23
corr,partial 二 级 净 相 关 proc corr;
var y;with f; partial a b ;
run;
24
corr,partial 三 级 净 相 关 proc corr;
var y;with f; partial a b d ;
run;
25
cancorr 典 型 相 关 分 析 proc cancorr;
var y1 y2 y3 ;with x1 x2 x3 ;
run;
26
reg 直 线 回 归 proc reg;
model y=x1;
run;
27
reg 二 元 回 归 proc reg;
model y=x1 x2;
run;
28
reg
可选择:
forward
backward
stepwise
多 元 回 归
可选择:
向 前 回 归
向 后 回 归
双 重 逐 步 回 归
proc reg;
model g=a b c d e f  /selection=forward;
run;
29
cluster
可选择:
average
wards
density
single
twostage
 
聚 类 分 析
可选择:
类 平 均 法
重 心 法
离 差 平 均 和 法
密 度 估 计 法
最 短 距 离 法
两阶段密度估计法
proc cluster method=average outtree=cate;
var a b c d e f ; id bh;
proc tree;
run;
30
fastclus 动态聚类分析 proc fastclus data=iris maxc=2 maxiter=10 out=clus;
var sepallen sepalwid petallen petalwid;
proc freq;
tables cluster*species;
run;
31 
standard 数据标准化 proc standard mean=0 std=1 out=new;
run;
32
princomp 主 成 分 分 析
可选择:
由 协 差 阵 计 算
由 相 关 矩 阵 计 算
proc princomp cov;
run;

proc princomp;
run;
33
factor 
可选择:
 
因 子 分 析
可选择:
主 分 量 分 析
主 因 子 分 析
proc factor data=socecon simple corr;
run;

proc factor data=socecon priors=smc msa scree residual preplot
rotate=promax reorder plot
outstat=fact all;
proc print;
run;
34
ttest 成 组 法 T 检 验 proc ttest data=pinzhs;
class pin;
var yield;
run;
35
univariate 配 对 法 T 检 验 proc univariate data=chromat;
var methdiff;
run;
36
npar1way 秩 和 检 验 proc npar1way data=gastric wilcoxon;
class group;
var lysolevl;
run;
37
univariate 符 号 秩 检 验 proc print data=chromat;
proc univariate data=chromat;
var methdiff;
run;
38
freq 卡平方测验
可选择:
2×2 联列表式
2×j 联列表式
r×c联列表式
data;
do a=1 to 2;
do b=1 to 2;
input x@@;
output;
end;
end;
cards;
......
;
proc freq;
weight x;
tables a*b / chisq ;
run;
39
reg 二 次 抛 物 线 proc reg data=uspop;
var yearsq;
model pop=year/r cli clm;
plot r. *p. ;
add yearsq;
print;
plot;
plot pop*year='a' predicted.*year='p' u95. *year='u'
l95. *year='l'/overlay;
run;
40
NLIN
可选择:
dud
MARQUARDT
负 指 数 曲 线
可选择:
试 位 法
麦 夸 特 法
PROC NLIN BEST=10 METHOD=dud;
PARMS B0=0 TO 2 BY .5 B1=.01 TO .09 BY .01;
MODEL Y=B0*(1-EXP(-B1*X));
DER.B0=1-EXP(-B1*X);
DER.B1=B0*X*EXP(-B1*X);
OUTPUT OUT=B P=YHAT R=YRESID;
PROC PLOT DATA=B;
PLOT Y*X='A' YHAT*X='P'/OVERLAY VPOS=25;
PLOT YRESID*X/VREF=0 VPOS=25;
RUN;
41
catmod 逻 辑 斯 蒂 回 归
(标 准 响 应 函 数)
proc catmod;
weight count;
direct heat soak;
model y=heat soak / freq ml nogls covb corrb;
quit;
42
sort
RSREG
二 次 响 应 面 分 析 proc sort;
by time temp;
proc rsreg;
model mbt=time temp;
ridge max;
run;
43
lackfit 欠适测验 model mbt=time temp/lackfit;
ridge max;
run;
44
score 得 分 分 析 proc score data=fitness score=factout out=fscore;
var age weight runtime runpulse rstpulse;
run;
45
stepdisc 逐 步 判 别 分 析 proc stepdisc data=iris bsscp tsscp;
class species ;
var sepallen sepalwid petallen petalwid;
run;
46
candisc 典 型 判 别 分 析 proc candisc data=iris out=outcan distance anova;
class species ;
var sepallen sepalwid petallen petalwid;
run;
proc plot;
plot can2*can1=species;
format species specchar.;
title'Plot of Canonical Variables';
run;
  47 RSREG 岭 嵴 分 析 PROC SORT;
BY X1 X2 X3;
PROC RSREG;
MODEL Y=X1 X2 X3/LACKFIT;
RUN;
DATA B;
*-------GET THE ACTUAL VALUES--------;
SET A END=EOF;
OUTPUT;
*-------CREATE AN X1*X2 GRID FOR PLOTTING--------;
IF EOF THEN DO;
Y=.;
X3=1.77;
DO X1=-1.5 TO 1.5 BY .1;
DO X2=-2 TO 2 BY .1;
OUTPUT;
END;
END;
PROC RSREG DATA=B OUT=C NOPRINT;
MODEL Y=X1-X3/PREDICT;
DATA B;
SET C;
IF X3=1.77;
PROC PLOT ;
PLOT X1*X2=Y/CONTOUR=6 HPOS=100 VPOS=36 HSPACE=10
HAXIS=-2 TO 2 BY .5
VAXIS=-1.5 TO 1.5 BY .5;
RUN;

转载于:https://www.cnblogs.com/520future/p/4770027.html

SAS数据步与过程步,数据步语句相关推荐

  1. 深度之眼Pytorch打卡(九):Pytorch数据预处理——预处理过程与数据标准化(transforms过程、Normalize原理、常用数据集均值标准差与数据集均值标准差计算)

    前言   前段时间因为一些事情没有时间或者心情学习,现在两个多月过去了,事情结束了,心态也调整好了,所以又来接着学习Pytorch.这篇笔记主要是关于数据预处理过程.数据集标准化与数据集均值标准差计算 ...

  2. powerbuilder查询符合条件的数据并且过滤掉其他数据_SQL语句之逻辑查询处理阶段...

    基础知识普及 对于教条式的定义请自己去查,此处不会涉及到文邹邹的知识,但还是强调一下基础的重要性,即使你理解了所有的概念,但当组合起来用时也会一头雾水. 逻辑查询处理阶段 在以上的10个处理步骤中,每 ...

  3. 4万字 全面解读数据中台、数据仓库、数据湖等概念!建议收藏!

    作者丨修鹏李 建议阅读需50分钟 如今,随着诸如互联网以及物联网等技术的不断发展,越来越多的数据被生产出来-据统计,每天大约有超过2.5亿亿字节的各种各样数据产生.这些数据需要被存储起来并且能够被方便 ...

  4. 华为数据之道:华为数据治理及数据分类管理实践

    节选自<华为数据之道> 作为一家巨型跨国企业,华为在 170 多个国家同时开展各种业态的业务,华为的数据底座是支撑华为业务运营的关键.因此,华为的数字化转型成为行业竞相研究的标杆.应行业要 ...

  5. 从程序员到数据科学家:SAS 编程基础 (06)- DATA步与PDV

    在BASE SAS 中,DATA 语句用于开始一个数据步, 后续为若干DATA步特定的语句:SAS数据步结束于下一个 DATA 步或 PROC 步开始之处,或者结束于后续显式指定的RUN语句. 注意: ...

  6. 像数据科学家一样思考:12步指南(中)

    像数据科学家一样思考:12步指南(上)<像数据科学家一样思考> 7-工程产品 下一步是建立统计软件.如果统计是分析和从数据中得出结论的框架,那么软件就是将这个框架付诸行动的工具.数据科学家 ...

  7. 译文 :图文教程,8步教你变身数据科学家

    转自:灯塔大数据:微信:DTbigdata: 本文已获授权转载,转载请注明原文链接和联系原作者: 原创译文|图文教程,8步教你变身数据科学家! 导读:数据科学家是干什么的呢?哪些地方需要数据科学家?怎 ...

  8. 像数据科学家一样思考:12步指南(上)

    介绍 目前,数据科学家正在受到很多关注,因此,有关数据科学的书籍正在激增.我看过很多关于数据科学的书籍,在我看来他们中的大多数更关注工具和技术,而不是数据科学中细微问题的解决.直到我遇到Brian G ...

  9. 一步一步教你抓数据——用.net精确提取网站数据的通用方法 [转]

    一步一步教你抓数据--用.net精确提取网站数据的通用方法 [转] 2008年02月23日 星期六 16:53 具体实现思路: 1 首先用WebClient类下载网页源码 public static ...

最新文章

  1. 阿尔伯塔大学博士毕业论文:基于图结构的自然语言处理
  2. 备战 ‘金三银四’ 必备超多软件测试面试题全在这里
  3. SQLOS 简单任务调度
  4. Javascript数组操作方法
  5. jupyter notebook界面颜色jt_更改jupyter notebook主题颜色——步骤详解(Windows系统)...
  6. 权限管理,pymysql模块
  7. python测试udp端口_Linux系统的ECS实例中TCP/UDP端口测试及验证方法说明
  8. 王炸吐血整理60个Redis面试题,全网最全了
  9. JavaScript中的回调函数(callback)
  10. WINDOWS下面使用ICE操作记录
  11. Android 刘海屏来袭,全网最全适配技巧
  12. kpi权重设置原则_东阳用友ERP评价体系的建立原则及过程
  13. 教你如何打造网页爬虫工具(实现思路及源码下载)
  14. 高通平台SPI驱动框架分析
  15. opendrive中的几何形状
  16. 数字化时代,银行如何建设管理小程序平台促进线上金融业务发展?
  17. 2022邮件群发软件哪个好,群发邮件软件推荐
  18. 内外网同时连接配置说明
  19. 无线网络渗透测试(一)基础知识
  20. mediaserver

热门文章

  1. 用户下单时商品库存变化
  2. 双区“网吧”,各得其乐
  3. 一款让人耳目一新的事件驱动型RTOS
  4. 京东商城开通英文网站 开拓西方市场
  5. 解决pycharm Python helpers are not copied yet to the remote host. Please wait until remote interpreter
  6. 51单片机,点亮LED灯和闪烁
  7. 智多星骗子行为让人发指
  8. 为什么趋势(涨)都有大阳线回调
  9. 使用cloudflare防御假墙攻击和优化配置
  10. Android近距离通信