收藏 分享(赏)

sas基本统计情况文本笔记.doc

上传人:还是太帅 文档编号:9087797 上传时间:2019-07-23 格式:DOC 页数:68 大小:1.37MB
下载 相关 举报
sas基本统计情况文本笔记.doc_第1页
第1页 / 共68页
sas基本统计情况文本笔记.doc_第2页
第2页 / 共68页
sas基本统计情况文本笔记.doc_第3页
第3页 / 共68页
sas基本统计情况文本笔记.doc_第4页
第4页 / 共68页
sas基本统计情况文本笔记.doc_第5页
第5页 / 共68页
点击查看更多>>
资源描述

1、Range极差 mean(1,2,3)平均 std 标准差/*自动导入*/Libname cwb “”;proc import datafile=“E:WORK杂七杂八SAS数据库 分期乐入池数据 明细数据(风险指标监控表sheet=风险指标监控表总表 ;getnames=yes; 导入源文件字段名作为SAS数据集的字段名自动导入%macro chouc(today_date);datafile=“C:Users、sheet=“、“;run;%mend;%chouc(20170116);、proc export data=sashelp.carsoutfile=/folders/myfolde

2、rs/sasuser.v94/TutorialsPoint/car_data.csvdbms=csv;run;/4*先排序*/proc sort data=new_cy2;by _COL1 ;run;/*标题 *打印*/proc print ;title 员工薪水;RUN;proc print data=cwb.result20170208 label;id package;var overdue_principal_za overdue_principal_fql; label overdue_principal_za=“、“ overdue_principal_fql=“、“ ;run;p

3、roc print data=cwb.result20170208;where principal_sell 20000000;run;/*、*/1proc tabulate data=work.risk005b;class _COL22; 、var _COL5;、table _COL22 _COL5;、/、math chinese、*、mean var、run;2proc tabulate data=work.risk005b;class _COL22;var _COL5 _COL4;table _COL22, (_COL4 _COL5)*(mean max min);run;table _

4、COL22 all, (_COL4 _COL5)*(mean max min); 、 ALL、 2.、 table (_COL22 all)*(_COL4)*(mean);、 table (sex all), (math chinese)*(mean std);keylabel mean=、 std=、 all=、;label sex=、 math=、 chinese=、;run;-/*复制* 强制追加*把B加到A中* 而SET是要新建一个的*/proc append base=chouc.chouc01 data=chouc.chouc02 force;/*force强制*/run;/*复制

5、* 强制追加*把B加到A中* 而SET是要新建一个的*/proc sort data=chouc.chouc01 dupout=chouc.bb noduprecs;/*noduprecs一行完全相同的重复记录*/by descending _COL0 ;run;-/*sql*联合查询*/Proc sql;Select * from aUnion /*多个查询结果合并成一个结果,并去掉重复* /Intersect /*查询公共部分数据*/Except /*把公共部分去掉的数据*/Outer union /*对多个查询结果横向合并*/Select * from b;Quit;-/*去*重复*方法

6、之一*/只显示nameselect name from tb group by name having count(*) 1显示所有数据select * from name in (select name from tb group by name having count(*) 1)*2、输出重复的观测值,使用nodupkey选项,注意:使用该选项后直接将原数据集中的重复值删除。注意dupout和out 的区别;proc sort data=clasdata dupout=dups3 nodupkey;by name class;run;*输出不重复的观测值。;proc sort data=

7、clasdata out=nodups4 nodupkey;by name class;run;*3、去掉重复的观测值使用nodup选项。;proc sort data =Clasdata out =NODUPS5 nodup;by name class;run ;/*删除*2017年1月3 日的数据*/data cwb.result;set cwb.result;if account_time=“03jan2017“d then delete;run;SQL 去重复:SELECT DISTINCT “栏位名“FROM “表格名“举例来说,若要在以下的表格,Store_Information,

8、找出所有不同的店名时,Store_Information表格store_name Sales Date1 $1500 Jan-05-19992 $250 Jan-07-19991 $300 Jan-08-19993 $700 Jan-08-1999我們就鍵入,distinctSELECT DISTINCT store_name FROM Store_Information結果:123-/*频率* 一般用这个*/proc freq data = asd;tables 变量 run;/*、*、*/proc summary data=work.risk004 mean max min cv var;

9、class _COL4;var _COL4;output out=aa mean=a max=b min=c cv=d var=e;run;proc print data=work.aa;run;/*分类* 频次*/proc means data=cwb.Overdue20170102;var veight;/*变量占比,即在总体中的相对重要程度*/freq _COL4;/*按照_COL4求观测值频度*/class _COL222;/*按_COL22分类*/run;/*MEANS、SUMMARY*、*、 PLOTS 、/NORMAL 、*/proc univariate data=work.a

10、a plots ;var _col4;run;/*取第2 行到第10行的数据*/Data aa;Set aaa (firstobs=2 obs=10)/*取前2 行数据*/Data aa;Set aaa (obs=2);Run;-/1*筛选例*/data a(where=(_COL101500);set cy;where _COL2118 and _COL181500;where _COL29=“上班人群“;run;-/2*有7000个人,随机抽样25 个*/PROC SURVEYSELECT DATA = a out = new_cy2 method = srs /*固定格式*/n =25

11、seed = 7000;RUN;/*读取* 几条记录*/PROC SQL NUMBER OUTOBS=3;SELECT * FROM WORK.A;QUIT;/3*有1000个人,按性别(sex)分为两层,每层按0.1 的比例抽样*/proc surveyselect data=cout=dmethod=srssamprate=0,1seed=25070419; strata sex;run; proc print data=d;run;/*分层抽取*/proc surveyselect /*随机*/data = Work.chouc01out = chouc.chouc01method =

12、srssampsize = (5, 5,15 )/*抽取数据量* 顺序与分层例相同*/noprint;strata _col22; /*分层*/run;/*求平均值*/proc sql;select _COL3,mean(loan_amt,repay_amount)from fql;quit;/* N, 10分位等 proc means data=wj.yrs_201612 N P1 p10 p25 p50 p75 p90 p99 min max mean sum maxdec=2;/*规定最多输出2 位小数*/vars crlim epp_amt R_prin eve_prin age FE

13、E_RATE epp_num R_num;run;-/*更新* 已知数据集 A和B,用A做为主数据集,生成新数据AB*/data ab;update a b;by id;/*根据卡号更新数据*/run;/*模型*reg回归分析*/proc reg data=cwb.Overdue20170102;model _COL21= _COL22;run; 统计关键字( 1. means 过程的一般格式proc means 选项列表;by 变量名称(分组变量);class 变量名称(分组变量);freq 变量名称(数值变量,用以表示相应记录出现的频数)weight 变量名称(数值变量,用以表示相应记录的

14、权重系数)var 变量名称(待分析的数值变量);run;univariate 过程的一般格式proc univariate 选项列表;by 变量名称(分组变量);class 变量名称(分组变量);freq 变量名称(数值变量,用以表示相应记录出现的频数)weight 变量名称(数值变量,用以表示相应记录的权重系数,占比,)histogram 变量名称/选项列表output pctlpts= pctlpre= var 变量名称(待分析的数值变量);run;SAS 中可以计算的描述性统计量关键字及其含义关键字 所代表的含义n 有效数据记录数nmiss 缺失数据记录数mean 均数std 标准差st

15、derr 标准误var 方差median 中位数mode 众数cv 变异系数max 最大值min 最小值range 全距sum 总计sumwgt 加权值总计css 校正的离均差平方和uss 未校正的离均差平方和clm 可信限(上下界值)lclm 可信限下侧界值uclm 可信限上侧界值skew(skewness) 偏度kurt(kurtosis) 峰度t 分布位置假设检验之 t 统计量probt 上述 t 统计量对应的概率值q1 第一四分位数q3 第三四分位数qrange 四分位数间距p1 第一百分位数p5 第五百分位数p10 第十百分位数p90 第九十百分位数p95 第九十五百分位数p99 第

16、九十九百分位数)-/*把分析结果以PDF显示*/ods pdf file=“C:UserschengwubinDesktop_ppdf.pdf“; /*可以在指定路径或系统显示*/proc means data=work.aa;var _COL4 _COL5;output out=work.bbbbb;run;proc print data=work.bbbbb;run;ods pdf close;/*把分析结果以HTML 显示*/ODS HTML FILE=“C:UserschengwubinDesktopFX.HTML“CONTENTS=“FXCON.HTML“/*固定格式*文件体存诸*/

17、FRAME=“FXFR.HTML“/*固定格式* 合并表内容*/PAGE=“FXPA.HTML“;/*固定格式* 指定分析存储到HTML*/PROC MEANS DATA=WORK.AA;VAR _COL4;RUN;ODS HTML CLOSE;/*RTF格式,既word*/ods listing close;/*关闭输出窗口 */ods rtf file=“C:UserschengwubinDesktop_ppdf.rtf“;proc means data=work.aa;var _COL4 _COL5;output out=work.bbbbb;run;proc print data=wo

18、rk.bbbbb;run;ods rtf close;ods listing ;/*打开输出窗口*/*输出为DAT格式*/filename wwb “C:UserschengwubinDesktop“;/*定义输出路径和文件名逻辑文件名*/option nocenter;/*全局变量,显示不居中,靠左*/ods listing file=“C:UserschengwubinDesktopqa.dat“;proc print data=work.qa;/*SAS 程序*/run;ods listing;/*打开 OUTPUT 窗口*/*输入为 CSV 格式,可用 EXCEL 打开*/option

19、 nocenter;filename exout “C:UserschengwubinDesktopworkfql 抽查cc1 期.csv“;ods listing close;固定ods results off; 固定ods csvall file=exout; 固定proc print data=chouc.chouc01;run;ods csvall close; 固定ods results on; 固定ods listing; 固定-/*GLMg 、*、 3 、*、*/data aa;input id sex $ y1-y3;y=y1; age=10;y=y2; age=15;y=y3

20、; age=20;cards;1 f 120 130 1602 m 130 150 1703 f 110 135 159;run;proc glm data=aa;class sex;model y1-y3=sex;repeated age 3 (10 15 20 );run;/*mixed 、 glm 、*/data ab;input id sex $ y1-y3;y=y1; age=10;y=y2; age=15;y=y3; age=20;cards;1 f 120 130 1602 m 130 150 1703 f 110 135 159;run;proc mixed data=ab;c

21、lass sex age;model y=sex age;repeated;/*、 R、 R 、*/run;-例:/*、*、 gplot/proc gplot data=A;symbol i=none v=star;/*SYMBOL 、SYMBOL 、 SYMBOL2、SYMBOL3*/plot amount*_COL0;/*、 SATV 、 SATM 、 PLOT 、*/run;/*、*/proc gplot data=sasuser.air;symbol1 i=join v=none line=1 ;/*、 SYMBOL 、 LINE=1、*/symbol2 i=join v=none l

22、ine=2 ;/*、 SYMBOL 、 LINE=2、*/plot co*datetime=1 so2*datetime=2 / overlay;/*、 PLOT 、“、*、= n”、 SYMBOL 、 n 、 SYMBOL 、*/run;/*SYMBOL 、 I=、 SPLINE 、A 、 I=SM nn、 nn 、 00、99 、 nn 、B 、 I=NEEDLE 、C 、 I=RL 、I=RQ 、I=RC 、D 、 CLI nn 、 RLCLI95 、 95、*/*、 GCHART 、,*/proc gchart data=fqll;hbar _COL5;run;/*、 VBAR 、 V

23、BAR 、 HBAR 、 GCHART 、 INSIGHT 、 INSIGHT 、*/goptions ftext=“、“;proc gchart data=fqll;title “、“;vbar _COL6 / group=_COL20;label _COL6 = “、“;run;/*、 GCHART 、 PIE 、 */proc gchart data=fqll;pie _COL6 /TYPE=PERCENT;/*、 PIE 、 TYPE=PERCENT 、*/run;用 SAS/GRAPH 绘图 SAS 可以把存贮在 SAS 数据集中的数据以图形的方式形象直观地显示出来。在SAS/GRA

24、PH 模块的支持下,SAS 可以作散点图、曲线图、直方图、扇面图、三维曲面图、等高线图、地图,等等。散点图和曲线图 用 GPLOT 过程绘制散点图和曲线图。比如,我们要绘制 SASUSER.GPA 中 SATV对 SASM 的散点图,只要用此程序:proc gplot data=sasuser.gpa;symbol i=none v=star;plot satv*satm;run;结果显示了一个 GRAPHICS 窗口,绘出了以 SATV 为纵轴、以 SATM 为横轴的散点图(见图 1)。在 GPLOT 过程中,用 PLOT 语句指定绘图用的变量。SYMBOL 语句是一个全程语句,指定绘图用的

25、连线方式、颜色、散点符号、大小,等等。SYMBOL 语句可以带编号,如 SYMBOL2,SYMBOL3 等,不带编号的相当于SYMBOL1。为了绘制连线,只要在 SYMBOL 语句中指定 I=JOIN。比如,对 SASUSER.AIR 数据集,以 DATETIME 为横轴、以 CO 为纵轴绘曲线图图,可以用:proc gplot data=sasuser.air;symbol i=join v=star;plot co*datetime;run;见图 2。如果不想在图中出现散点符号可以在 SYMBOL 语句中用 V=NONE。 为了在图中作几条曲线,只要在 PLOT 语句中指定多个因变量(自变

26、量一般应为同一个),并使用 OVERLAY 选项,如:proc gplot data=sasuser.air;symbol1 i=join v=none line=1 ;symbol2 i=join v=none line=2 ;plot co*datetime=1 so2*datetime=2 / overlay;run;其中我们指定了两个 SYMBOL 语句,第一个 SYMBOL 语句指定了 LINE=1,表示线型为实线,第二个 SYMBOL 语句指定了 LINE=2 表示线型为虚线。我们在 PLOT 语句中用了“纵轴*横轴= n”的格式来指定曲线使用哪一个 SYMBOL 语句的规定来画,

27、 n 对应于 SYMBOL 语句的序号。SYMBOL 语句的 I=选项还可以取 SPLINE 表示在散点间连接连样条曲线,取 I=SM nn( nn 取 0099 值)表示绘制样条曲线但可以不经过散点, nn 值代表曲线光滑性与拟和度的折中。取 I=NEEDLE 绘制每个点到横轴的垂线。取 I=RL 绘制线性回归直线,I=RQ 为二次曲线,I=RC 为三次曲线,后面加上 CLI nn 如RLCLI95 表示在回归直线之外绘制预测值的 95置信限曲线,比如:proc gplot data=sasuser.gpa;symbol i=rlcli95 v=star;plot satv*satm;run

28、;见图 3。GPLOT 过程还可以有其它灵活的用法,可以参考有关资料或用 SAS 系统菜单“Help | Extended Help”,从中找“SAS System Help: Main Menu | Graphics | GPLOT”。直方图和扇形图 用 GCHART 过程绘制直方图、扇形图、三维直方图等表示变量分布的图形。例如,要绘制 SASUSER.GPA 中 GPA 的分布直方图,只要用:proc gchart data=sasuser.gpa;vbar gpa;run;其中绘图用的变量用 VBAR 语句给出。图形见图 4。如果把 VBAR 改成 HBAR 则条形方向变为横向。用 GC

29、HART 绘制的直方图和在 INSIGHT 中绘制的直方图有所不同,它在横轴标的是区间的中点值,而在 INSIGHT 中横轴标的是区间的端点值。可以绘制分组的直方图,例如按性别分组绘制两个直方图并排放置,可以用如下程序: proc gchart data=sasuser.gpa;vbar gpa / group=sex;run;结果见图 5。在 GCHART 中用 PIE 语句绘制表示频数的扇形图,例如: proc gchart data=sasuser.gpa;pie sex;run;结果见图 6。如果想显示百分比值,只要在 PIE 语句中加入 TYPE=PERCENT 选项,如“pie s

30、ex / type=percent;”。GCHART 过程还可以用 BLOCK 语句绘制三维直方图。例如,在 SASUSER.HOUSES有各种房子的情况,其中 BEDROOMS 表示卧室个数,STYLE 表示房子的式样,都是分类变量,我们可以用如下程序画出反映卧室个数和房子式样的联合分布的三维直方图:goptions hpos=90 vpos=70;proc gchart data=sasuser.houses;block style / group=bedrooms;run;三维曲面图和等高线图 假设对一个二元函数 z=f(x,y),我们有了 x 取等间隔值、y 取等间隔值时 z 的值,这

31、时我们可以用 G3D 过程绘制曲面图形,用 GCONTOUR 绘制曲面的等高线图。例如,我们想绘制一个二维正态分布曲面的图形,假设(X,Y)服从联合正态分布,其均值都是 0,方差分别为 1 和 a,相关系数为 r。这时,我们可以得到(X, Y)的联合密度函数的公式为:我们可以在一个网格上计算曲面的值:data dnorm2;a=2;a2=sqrt(a);r=0.5;det=a*(1-r*r);do x=-3 to 3 by 0.3;do y=-3*a2 to 3*a2 by 0.3*a2;z=1/(2*3.1415926*det)*exp(-0.5/det*(a*x*x + y*y - 2*r

32、*a2*x*y);output;end;end;keep x y z;run;然后,我们就可以用 G3D 过程来绘制曲面图: proc g3d data=dnorm2;plot x*y=z;run;见图 8。用 GCONTOUR 过程可以绘制曲面对应的等高线图,例如: proc gcontour data=dnorm2;plot x*y=z;run;见图 9。 图形的调整与输出 各绘图过程中都指定了丰富的选项来调整图形,读者可以参考有关资料或查系统的帮助。另外,在图形中也可以用 TITLE 语句和 FOOTNOTE 语句给图形加标题和脚注。为了在图形的标题、标签中也能使用汉字,老的 SAS 版

33、本需要比较多的步骤,但是在 Windows 下的 SAS 8.0 以后只要很简单的语句就可以在图形中使用 True Type 字型的汉字,例如: goptions ftext=“宋体“;proc gplot data=sasuser.class;title “试验 FONTS 的汉字功能“;plot weight * height;label weight = “体重“ height=“身高“;run;见图 10。 您的位置: 首页课程辅导SAS 过程初步.SAS 过程初步.(转载自 SAS 园地) SAS 过程用法及常用语句 o SAS 过程用法 o SAS 过程步常用语句 用 PRINT

34、过程制作列表报告 o 基本用法 o 使用中文列标题 o 标题及全程语句 o 用 BY 语句分组处理 o 计算总计和小计 用 TABULATE 过程作统计量表格 用 SORT 过程排序 MEANS 过程、 UNIVARIATE 过程、FREQ 过程 用 CORR 过程计算相关系数 用 SAS/GRAPH 绘图 o 散点图和曲线图 o 直方图和扇形图 o 三维曲面图和等高线图 o 图形的调整与输出 前面讲过,SAS 系统用 SAS 数据步生成和管理数据,用过程步进行分析、报表、绘图。本章介绍 SAS过程步的一般用法和常用语句的含义,以及几个简单报表、分析、绘图过程的使用。SAS 过程用法及常用语句

35、 SAS 过程用法SAS 过程步的一般形式为:PROC 过程名 DATA=输入数据集 选项 ;过程语句 / 选项;过程语句 / 选项;RUN;其中 PROC 语句的选项是可选的,用来规定过程运行的一些设置,如果有多个选项用空格分开。DATA=输入数据集也是可选的,如果缺省的话使用最近生成的数据集。过程步一般以 RUN 语句结束,也可以省略 RUN 语句而在下一个过程步或数据步的开始处结束,另外还有一种所谓 “交互式过程”可以在遇到 RUN 语句时不结束过程运行,只有遇到 QUIT 语句或者下一个过程步、数据步时才结束。过程步在 PROC 语句之后、结束之前可以有若干个过程语句。通常情况下,过程

36、语句与数据步中的语句不同,数据步中的语句不能用在过程步中。过程步语句一般以某一个关键字开头,比如VAR、BY、TABLES、WEIGHT 等,语句中有一些有关说明,如果有选择项的话要写在斜杠后。SAS 过程步有些是对数据集作某种变换(比如 SORT 过程对数据集排序),不生成显示结果;多数过程步是对数据集作某些分析、报表,这时结果出现在 OUTPUT 窗口(高精度绘图过程的输出在GRAPHICS 窗口)。对 OUTPUT 窗口的结果,我们可以用“File | Save As”菜单把它保存到一个文本文件进行进一步的修饰,插入到其它报告中,也可以用“File | Print ”菜单之间打印。SAS 过程步常用语句本小节简单介绍几个在 SAS 过程步中常见的语句,更具体的用法可以在以后实际用到时再仔细体会。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 往来文书

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报