SAS实战内部培训.pdf

上传人:小魏子好文库 文档编号:8864335 上传时间:2021-01-21 格式:PDF 页数:10 大小:657.24KB
返回 下载 相关 举报
SAS实战内部培训.pdf_第1页
第1页 / 共10页
SAS实战内部培训.pdf_第2页
第2页 / 共10页
SAS实战内部培训.pdf_第3页
第3页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《SAS实战内部培训.pdf》由会员分享,可在线阅读,更多相关《SAS实战内部培训.pdf(10页珍藏版)》请在三一文库上搜索。

1、SAS入门培训资料 (内部使用) 一、简要说明 1.关于 SAS SAS 是专业统计分析工具,由于其编程的功能使很多人望而却步,但是对于感 兴趣的人来说,只要坚持学习,都会有收获。 2.关于数据处理 SAS能处理近千万条数据,对于互联网行业来说,这些都是日常性的工作,一 般的数据处理工具象EXCEL只能处理6万多条数据,很难满足分析人员的需要, SPSS 由于其响应速度的缓慢,虽然处理数据比 EXCEL 多 4 个数量级(约 50 万),但是仍不是分析人员的首选。 3.关于数据分析 数据分析员首先要懂得这样一个道理:分析的首要因素不是工具(SAS, SPSS,EXCELL),也不是方法(简单统

2、计方法,高级统计方法,人工智能方 法),而是理念(IDEA),更具体说是思路(WAY),这不是人人都能理解的 道理,但是在明确分析的思路以后,工具和方法随之就会摆在分析人员面前, 所以学会工具乃是进行下一步分析的必要条件。 4.关于分析思路 以下是我总结的一般数据分析的思路,以流程图展示: 上图每个表格中的黑体字表示流程步骤,首先是主题需求,即我们要分析 的主题是什么,这个一般是决策者关心的问题,我们需要把决策者关系的问题 给它具体化。 然后是影响因素,影响因素是针对主题需求而设计的定性变量集合。 接着就是数据的获取了,数据的获取是根据影响因素去寻找相应的数据,这些 数据源可能存放在不同的地方

3、,需要我们用各种方法去获取这些数据源(如从 EXCEL,数据库等)。接着是数据导出和数据导入,这两个步骤是针对SAS工 具而言的,在EXCEL里面不需要。 数据导入到SAS之后,不能立刻进行分析, 而是需要对数据进行清洗,这个过程是很复杂的,也有专业的工具来做这件事 情(如CLEMENTINE),这里我们不做详细的分析。接下来就是数据的分析了, 分析就需要涉及到方法,有简单的统计方法,也有高级的统计方法,所有的方 法都是围绕主题来进行的。最后对于出来的结果用报告的形式发布。 二、实例操作过程 安装好特别版SAS9.0之后,运行EXE文件,我们会看到如下图: 上面打箭头的三个地方是分析的时候必须

4、用到的,其它的在此不再一一说明, 请自行操作感受一下。 下面我们针对userstatus2表进行实战演习,思路如下: 1. 主题需求:分析上半年主站北京和讯和鸿联1518两个通道的用户流失情况, 因为这两个通道上半年一直在用,其它的通道都是非连续使用,在此不研究。 2. 影响因素:影响用户流失的可能因素有:产品(性福、影视、动漫);地区 (不同地区由于经济发展水平和人的素质等因素不同也会影响用户流失), 其它的因素肯定还有,比如用户年龄结构,教育程度等,但是由于我们无法 获取这些信息,只能放弃。 3. 数据获取:用SAS程序获取userstatus2对应字段数据。 4. 数据导入与导出:有两种

5、方法,在此介绍用EXCEL导入,详见下面的专题 介绍。 数据整理:对形成的六个数据集(六个月)进行整合,形成一张SAS数据表。 逻辑库, 存放数据 文件 程序窗 口,编程 实现地 日志窗 口,随时 记录程序 运行结果 5. 数据分析:本文用频率分析、列链表分析完成,其它的数据挖掘方法(如 WEB图、决策树等)是用CLEMENTINE实现的,在此不做介绍了。 6. 结果呈现:大家就用WORD 好了。这是个通用的软件。 专题介绍: 1. 关于数据获取 第一种方法:直接用 SAS 连接数据库,此法我试验过,对 10 万条记录的数据 响应时间大约是28秒,如果大家猴急猴急的,这个可能有点慢了,要是数据

6、更 多,那这个方法你肯定不喜欢了,但是我还是要把对应的程序告诉大家: 首先要去控制面板做一个ODBC数据源,如我们现在要想获取218.1.74.238服 务器上的数据库VOD_STAT里面的表filmstat的数据(当然啦,你首先要和管 理员联系你有没有访问的权限),去控制面板,打开管理工具下面的数据源选 项,添加一个数据源,这个流程就不做介绍了,大家可以自己去做。 最后我们添 加好的数据源的名称是VOD_STAT。回到SAS,在程序窗口输入如下程序: 程序详解: 第一句:libname tryf:; 这句话告诉SAS,我们要建立一个SAS 数据库了,名字叫feiyun, 数 据 库 里 面的

7、文件放在F盘根目录下面,当然啦,这里的数据库名字和目录你都可以更 改的。比如我想放在F盘的下一级目录sas里面,那么就用这个语句:libname feiyunf:sas;简单吧?要注意的是,这里的分号”;”千万不能丢!SAS 语句都是以分号结尾的。 第二句话:proc sql; 这句话告诉SAS,我要SQL了,大部分情况下我们在SQL里面使用的SQL语句 在SAS里面都能用。 第三句话:Connect to odbc (dsn=VOD_STAT uid=bbvodzfy pwd=zfybbvod!#!); 这句话告诉SAS,我要连接到ODBC啦,这个ODBC就是刚才在控制面板里面设 置的,它的

8、作用就相当于一个桥梁,把SAS和具体的数据库连接起来,括号里 面第一个DSN是数据源,第二个是用户名,第三个是密码。注意,以分号结束 此SAS语句。 第四句话:create table feiyun.chao as Select * from connection to odbc (select top 10 * from filmstat); Libname feiyunf:; proc sql; Connect to odbc (dsn=VOD_STAT uid=bbvodzfy pwd=zfybbvod!#!); Create table feiyun.chao as Select *

9、from connection to odbc (select top 10 * from filmstat); quit; 这句话由三部分组成:create table feiyun.chao as 是要创建一个表 叫chao,该表位于逻辑库feiyun里面;Select * from connection to odbc 是一个固定语句,不可更改。select top 10 * from filmstat就 是具体的SQL语句了,这个里面可以完成大部分的查询语句功能。 第五句话:quit;这句话不能忘了,因为我们在查完并获取数据后,要把门给 关上,否则SAS会死机的,SAS很生气,后果很严

10、重! 好了,此时你点击SAS上面的小人(RUN),不到5秒钟,就可以看见 VOD_STAT里面的filmstat数据到了你的SAS库feiyun里面的chao数据 表了。 第二种数据获取的方法: 第一步:先去具体的数据库查询,查好需要的数据后,拷出到EXCEL表里面, 这个过程大家都熟悉,不介绍了。下面介绍如何把EXCEL表的数据导入到SAS 里面。 打开fileimportdata菜单,弹出如图界面: 点击NEXT,弹出下图: 找到你存放EXCEL的地方,点击OK 选择此项 选择要导入 的工作表 选择你要导入的工作表,点击NEXT 选择你要存放导入的数据的数据库(library)以及数据表(

11、member),点 击完成即可把外部数据导入到SAS系统中。 本文采用了第二种方法。 2、关于数据整理 如 果 你 用 SQL 语 句 把 16 月 份 userstatus2 表 的 数 据 ( 取 字 段 source,serviceid,provinceid,status)取出,并保存成六张EXCEL 表,而且已经把这六张表按照刚才的数据导入方法导入到SAS系统,其SAS数 据集的名字分别叫:jan,feb,mar,apr,may,jun以下语句可以把这六张表 联成一张表: 程序详解: 第一句:data sasuser.jan_jun; 创建数据集jan_jun,放在sasuser库下。

12、 第二句:set sasuser.jan sasuser.feb sasuser.mar sasuser.apr sasuser.may sasuser.jun; 把六个数据集连接起来,合并成jan_jun. 运行即可。 结果在sasuser库下生成一个jan_jun数据表。 data sasuser.jan_jun; set sasuser.jan sasuser.feb sasuser.mar sasuser.apr sasuser.may sasuser.jun; run; proc sort data=sasuser.jan_jun;by status;run; 该语句对数据集jan_

13、jun进行排序,按照status字段排序。 该语句生成SAS数据表jan_juntrcd. 上面的语句把数值型数据转换成字符型数据。 proc sql; create table sasuser.jan_juntrcd as select * from sasuser.jan_jun where source in(BJHX,HL1518);run; 上面的程序实现把数值型的输出转化成字符型输出。 下面进入数据分析过程: 分析的方法有很多,在此只简单介绍频率分析。 有两种方式可以实现: 第一种:程序实现 程序详解 第一句:Proc freq data=sasuser.jan_junanls;

14、此句是说:我要对数据文件jan_junanls做频率分析了。 第二句:Tables serviceid_str/out=serv; Tables provinceid_str/out=pro; Tables status_str/out=sta; Proc freq data=sasuser.jan_junanls; Tables serviceid_str/out=serv; Tables provinceid_str/out=pro; Tables status_str/out=sta; Run; Proc freq data=sasuser.jan_junanls; Tables ser

15、viceid_str/out=serper; By status_str; Run; 这 三 句 话 是 说 : 我 要 对 数 据 文 件 jan_junanls 中 的 三 个 字 段 serviceid_str,provinceid_str,status_str做频率分析。并分别输出 结果集serv,pro,sta到临时数据库work中,此处省略work,就说明三个文 件集存放在work中,当然,如果你想放在sasuser数据库中,就要在这三个 文件前面加上前缀sasuser. 以 下 类 似 , 要 注 意 下 面 的 SAS 语 句 是 要 实 现 serviceid_str 按 照

16、 status_str分组计算频率(即by status_str). 第二种方式:菜单操作 1. 点击solutionanalysisanalyst 2.弹出如图对话框 3. 点击fileopen by sas name.弹出如图对话框: 在数据库sasuser中找到jan_junanls数据集,点击OK. 此时jan_junanls就会出现在需要分析的框中。 4.点击statisticsdescriptivefrequency counts,出现如下对话框: 5.假如我们要分析各省的流失情况,点击serviceid_str到frequencies 框中,如果你还想知道流失和续费中各省占比,点

17、击variables按钮,如图: 因为流失和续费对应的字段是status_str,所以点击status_str到by group框中去即可。点击OK,回到上一级对话框。点击OK,就OK了。 6.结果展示 注意上面的左边比以前多了frequency counts选项,双击其中的1 way.,就可以知道结果了。 当然,如果你想知道这个菜单操作的程序是怎么样的,可以点击code,可以发 现它和上面第一种方法的程序几乎是一样的。 7结果解释 这个就不需要解释了吧,都是业务精通人士。 三、几个注意点 1.关于分析主题 由于分析主题一般是决策者提出的,但是作为分析人员还需要把决策者的需求 进一步细化,需求

18、的理解是整个分析过程的关键。 2.关于分析工具 如果你喜欢SAS(我推荐此工具),那就好好好学一学统计知识,一般情况下, 的确需要编程,但是,如果你学会使用analyst模块,也可以不需要编程,前 提是数据集是现成的,拿来就用。 因为SAS对数据的前期处理都是需要编程的。 如果数据不大(50万以下),可以用SPSS或者EXCEL分析。超过50万的数 据那就只好用SAS了。 3.关于分析结果 有时候分析的结果往往不是我们想象的,比如我以前发给大家的用数据挖掘工 具CLEMENTINE做的决策树分析,说实话,结果很不理想,分类正确率只有 63%,但是这不是方法或工具的错误,而是原始数据本身的质量问

19、题。 4.关于分析报告 分析报告的写法很有讲究的。 我在九州四个月期间,自认为形成一套自己独特的 分析报告写法,大家可以借鉴:我认为给决策者看的报告首先要突出重点,其 次要简明扼要,最后要有充分的证据或数据支持你的结论,抓住这三点,你就 可以写出决策者需要的东西。 我一般把报告分为三部分:第一部分,所有关键结 论以及形成结论的原因(如果有),这是决策者最感兴趣的。 第二部分,详细的 分析过程,如果他们有时间,他们会仔细了解你的分析过程和分析思路。 第三部 分,附录,附录就是结论的证据,你需要把形成结论的关键性证据附加在附录 中。 好了,由于比较仓促,写的不好,请各位见谅。 此文只涉及到分析中的很少部分 模块,如果大家对SAS感兴趣,可以多多学习,多去网上的各BBS网站交流。 在此我提供两个不错的网站: 1. 2. www.pinggu.org

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

当前位置:首页 > 技工类职业技能考试


经营许可证编号:宁ICP备18001539号-1