《数据采集与统计分析》主讲高洁课程目的与主要内容1.数据采集部分---介绍主要的试验设计方法,用尽可能少的试验点采集尽可能多的信息.2.统计分析部分---介绍常用的统计分析方法,从数据中根据需要有效地提取信息.3.SAS软件部分---学习操作SAS,应用SAS进行数据的实际分析.统计数据处理分析方法的应用软件统计分析软件附属型独立型EXCELLOTUSSAS(StatisticalAnalysisSystem)SPSS(StatisticalProgramforSocialSciences)预备篇:SAS统计分析软件入门内容安排•概述•SAS操作方法※SAS/INSIGHT※SAS/分析员应用※SAS编程SAS(StatisticalAnalysisSystem),中文名“赛仕”,译为“统计分析系统”◆概述国际上公认的标准统计软件之一。公司卓著的业绩使之被评为“全美国人最乐意为之工作的100家公司”之一及最佳决策支持工具的供应商。发展1966年美国北卡罗莱纳州州立大学A.J.Barr1972年推出SAS72供大学使用版1976年成立SAS研究所(SASInstituteInc.),总部在美国北卡州凯瑞市现已是全球最大的私人软件公司和全球排名第九位的独立软件商。目前达到SAS9.2版本。系统组成:三十几个模块,如BASE,GRAPH,ETS,FSP,AF,OR,IML,SHARE,QC,STAT,INSIGHT,ANALYST,ASSIST,CONNECT,CPE,LAB,EIS,WAREHOUSE,PCFileFormats,GIS,SPECTRAVIEW,SHARE*NET,R/3,OnlineTutor:SASProgramming,MDDBServer,ITServiceVisionClient,IntrNetComputeServices,EnterpriseReporter,MDDBServercommonproducts,EnterpriseMiner,AppDevStudio,IntegrationTechnologies等功能包括:客户机/服务器计算、数据访问、数据存储及管理、应用开发、图形处理、数据分析、报告编制、质量控制、项目管理、计算机性能评估、运筹学方法、计量经济学与预测等界面:三个基本窗口Editor编辑窗:在此编写SAS程序Log记录窗:记录程序运行过程中所做的内容,如所运行的数据情况、所调用的过程步、程序运行时间等(红色---错误绿色---警告兰色---正常)Output结果输出窗:统计分析的结果。Result窗口,Explorer窗口其他:keys窗、libname窗、options窗、var窗、dir窗(在command命令窗或命令行command===输入相应的命令可激活这些窗口)SAS会话窗口程序编辑窗口运行记录窗口结果输出窗口命令窗口Results窗口在命令窗口输入“keys”后情况命令行命令窗(条)常用的快捷键F4recall命令,用于editor窗,将前面提交的程序调回,可多次使用F5切换到editor窗;F6切换到log窗;F7切换到output窗F8submit命令Ctrl-E清除当前窗口的内容。editor窗被清除的内容不能用F4调回SAS9.01中文界面的几个窗口使用Tools—Options—Preferences可修改界面显示,或输出文件的格式等。在命令窗输入num并回车,可在编辑窗口中加入行号。SAS文件的扩展名*.sd2SAS数据集(6.12版)(必须以字母开头,长度不超过8位);8.0以上版为*.sas7bdat;*.sasSAS程序文件*.loglog窗口输出*.lstSAS结果文件◆SAS软件操作方法三种操作方法:SAS/INSIGHT——最为直观,便于步步深入。SAS/Analystapplication——提供自动形成程序代码功能且在属性数据分析和功效函数计算方面比INSIGHT强。SAS编程——功能最强,尤其是一些特殊或深入的统计分析功能只能通过编写程序来实现。一、SAS/INSIGHT调用SAS/INSIGHT有三种方法:1、可用菜单栏中的下拉菜单:Solutions→Analysis→Interactivedataanalysis;2、在命令行中键入INSIGHT命令;3、提交PROCINSIGHT语句或通过SAS/ASSIST.SAS/INSIGHT的功能:File:提供处理读入数据集、存储数据集、分析结果的表格和图形管理;Edit:提供对打开的数据集的变量、观测值进行增删、设定数据的显示格式和窗口管理等;Analyze:提供作图和分析功能,分析功能包括:分布拟合、线性模型(包括回归分析、方差分析等)、多变量分析;Table:提供显示分析结果的各种表的功能;Graphs:提供生成与分析有关的各种图形的功能;Curves:提供与分析有关的各种曲线的功能;Vars:提供由分析结果形成的新的变量的功能。二、SAS/Analystapplication调用SAS/分析员应用有两种方法:1、可用菜单栏中的下拉菜单:Solutions→Analysis→Analyst;2、在命令行中键入Analyst命令.SAS/分析员应用的功能:File:有关数据文件的新建、读、写、转换、打印和传输等;Edit:关于修改选项的一些功能;View、Data:对已打开的数据集进行编辑和加工,如对数据集行列的增、删、改、排序、转置和对数据集的随机抽样等;Graphs:图形功能,主要包括直方图、盒形图、等高线图、三维散点图和曲面图等;Statistics:主要的统计分析功能,包括描述统计量的计算、列联表分析、假设检验、方差分析、回归分析、多变量分析和样本容量计算等。三、SAS编程SAS程序:由数据步(DATA)和一个或多个过程步(PROC)组成。数据步:组织数据;过程步:对已组织好的数据进行处理并输出处理结果。SAS语句以一个关键词开始,以分号(;)结束;dataa;inputx;cards;323544565;procprint;run;SAS程序的基本结构数据步:创建数据过程步:调用数据分析过程或Lines或Datalines运行编辑窗内程序点击图标按功能键“F8”在命令行(窗)键入“submit”在Run下拉菜单中选“submit”所激活窗口(Editor、Log、Output)内容的保存在命令行(窗)键入file“路径\文件名”点击图标在file下拉菜单中选“save”或“saveas”只有编辑窗口(editor窗)才能打开文件(一)SAS语言基础dataa;inputx;cards;435465;procprint;run;以关键词开始SAS语句;对于8.0以上SAS软件,这些关键词显示为蓝色;如果显示为红色,则可能的关键词无效或拼写错误data;inputx;cards;435465;procprint;run;1.所有SAS语句必须以“;”结束dataa;inputx;cards;435465;procprint;run;初学者最容易犯的错误就是不写分号。此时SAS将两个语句误认成一个语句(statement)。注意:(1)一个SAS语句可以写成两行或多行,如“dataa;”可写成dataa;(2)多个SAS语句可以写成简单的一行。如:“procprint;run;”2.程序的结束dataa;inputx;cards;435465;procprint;run;3.数据集名与变量名dataa;inputx;cards;435465;procprint;run;数据集名称变量名称数据集名与变量名取名时可以是字母、下划线、数字,不能以数字开头,最多可以32个字符(SAS8.0以下软件的最大字符数为8个字符)字母可以大写、小写或大小写混合,因此Weight、weight、WEIgHT被SAS视为相同的变量。4.变量的排列dataa;inputx;cards;435465;procprint;run;如果有多个变量,如Height、Weight、Age、Sex,Job则在SAS中排列为“inputHeightWeightAgeSexJob;”如果将以上变量用代号x1、x2、x3、x4、x5表示,则语句可写为:“inputx1x2x3x4x5;”或简写为:“inputx1-x5;”5.输入数据的标识语句dataa;inputx;cards;435465;procprint;run;cards;或datalines;或lines;语句之后表示数据的输入即将开始。数据的变量名、变量的格式等在input语句中定义。数据输入结束,也必须采用分号结束。(二)数据步dataa;inputx;cards;435465;procprint;run;数据分析前,数据集必须被读入。读入数据方法:1.直接创建;2.Infile和input语句创建;3.对1.、2.数据进行简单编辑,创建新的变量等。1.直接创建数据集datachild;/*建立临时数据集child.sd2,自动放在saswork子目录下*/inputidx1$x2x3x4x5x6;/*指明要输入的变量,$为字符型变量*/cards;/*标志数据区开始,数据之间以一个或几个空格分隔*/1m3295.514.053.549.642m3592.013.052.041.613m3389.012.553.535.81254m176168.053.582.0100.14255f3091.011.048.035.39256f3391.011.547.044.98521f178163.051.079.087.42;/*标志数据区结束,分号必须单独一行*/run;SAS中的常用变量类型数值型:不需特殊定义字符型:定义方式变量名$日期型:多种形式如:变量名mmddyy6.实际记录为距1960/01/01的天数输入格式可以是:09100409/10/0409100409102004其它数据库中的逻辑型、备注型变量在SAS中均为字符型变量。日期型变量转进SAS后一般也变为字符型变量。dataa1;inputidx1$x2x3x4;cards;1m3295.52m3592.013.03m3389.012.5;procprint;run;结果:Obsidx1x2x3x411m3295.52.023m3389.012.5dataa1;inputidx1$x2x3;cards;1m3295.52m3592.013.03m3389.012.5;procprint;run;结果:Obsidx1x2x311m3295.522m3592.033m3389.0SAS数据集创建时存在的问题datachild;inputidx1$x2x3x4x5x6;cards;1m3295.514.053.549.642m35.13.052.041.613m3389.012.553.535.81254m176168.053.582.0100.14255f3091.011.048.035.39256f3391.011.547.044.98521f178163.051.079.087.42;procmeans;run;缺失值的输入:以“.”表示,缺失值不进入分析VariableNMeanStdDevMinimumMaximum-----------------------------------------------------------------------------id7184.5714286194.96397711.0000000521.0000000x2773.857142970.477960130.0000000178.0000000x36116.250000038.241012089.0000000168.0000000x4723.785714319.482593011.000000053.5000000x5759.285714314