全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5514 6
2015-03-02
刚开始学习SAS,主要参考书《SAS Certification Prep Guide-Base》《The_little_SAS_book》,
一些学习记录和大家分享!陆续更新

SAS学习系列01. SAS介绍及基础.rar
大小:(71.04 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列01. SAS介绍及基础.docx



SAS学习系列02. 输出数据报表.rar
大小:(213.4 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列02. 输出数据报表.docx



SAS学习系列03. 导入数据Ⅰ.rar
大小:(570.62 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列03. 导入数据Ⅰ.docx



SAS学习系列04. 导入数据Ⅱ——Excel文件.rar
大小:(377.35 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列04. 导入数据Ⅱ.docx



SAS学习系列05. 数据步创建数据集的过程.rar
大小:(156.43 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列05. 数据步创建数据集的过程.docx



SAS学习系列06. 使用SAS函数.rar
大小:(94.94 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列06. 使用SAS函数.docx



SAS学习系列07. IF和WHERE语句.rar
大小:(267.21 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列07. IF和WHERE语句.docx



SAS学习系列08. 日期时间数据及数据格式.rar
大小:(93.66 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列08. 日期时间数据及数据格式.docx



SAS学习系列09. 用SET语句创建,修改数据集.rar
大小:(214.76 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列09. 用SET语句创建,修改数据集.docx



SAS学习系列10. 合并数据集.rar
大小:(267.52 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列10. 合并数据集.docx



SAS学习系列11. 对数据做简单的描述统计.rar
大小:(255.77 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列11. 对数据做简单的描述统计.docx



SAS学习系列12. SAS数组.rar
大小:(61 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列12. SAS数组.docx



SAS学习系列13. 绘图Ⅰ—通用语法.rar
大小:(527.73 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列13. 绘图Ⅰ—通用语法.docx



SAS学习系列14. 统计学基础知识Ⅰ.rar
大小:(65.55 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列14. 统计学基础知识Ⅰ.docx



SAS学习系列15. 统计学基础知识Ⅱ—统计表,统计图.rar
大小:(1.06 MB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列15. 统计学基础知识Ⅱ—统计表,统计图.docx



SAS学习系列16. 绘图Ⅱ—条形图,直方图,盒形图.rar
大小:(240.97 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列16. 绘图Ⅱ—条形图,直方图,盒形图.docx



SAS学习系列17. 绘图Ⅲ—散点图,时间序列图,拟合曲线图.rar
大小:(249.35 KB)

只需: 1 个论坛币  马上下载

本附件包括:

  • SAS学习系列17. 绘图Ⅲ—散点图,时间序列图,拟合曲线图.docx






附件列表

SAS学习系列05. 数据步创建数据集的过程.rar

大小:110.77 KB

只需: 1 个论坛币  马上下载

SAS学习系列05:数据步创建数据集的过程

本附件包括:

  • SAS学习系列05. 数据步创建数据集的过程.docx

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-3-2 14:50:26
老规矩,放一篇试阅。

01. SAS介绍及基础

一、     SAS介绍

1. SAS是专业的统计分析软件,它对表格数据进行操作和统计分析比用Matlab更方便更专业。

2. SASSPSSEXCEL区别

都能用于处理数据和统计分析,高级程度:

SAS > SPSS > EXCEL

EXCEL——侧重表格(办公),只能处理一些简单的数据分析,公式丰富,一般多用于计算(统计分析结果不全面);

SPSS——专业统计分析软件,界面菜单式操作,简单易学,缺点是通用性不好(处理同样的数据,也要重复点菜单);

SAS——更专业统计分析软件,代码编程实现(通用性好),大多用于金融、医药等领域,用于大企业的数据分析,缺点是较难学。

    3. 要学好SAS,也离不开《统计学》。

二、     SAS基础

1.    SAS语句(可随便跨行、空行,注释可以用 /*……*/

   不区分大小写;

   SAS命令关键词开始,以分号结尾;

2.    数据集

1)即“数据表”,一行称为一个观测值;一列称为一个变量(属性)

1111.jpg

2)数据类型:数值型、字符型

注:“Id”等根据需要既可当作数值型或字符型。

3)缺失值

数值型缺失值用 . 表示,字符型缺失值用空格表示;

4)命名规则:字母开始,由字母、数字、下划线组成。

1:数据集和变量可以有描述性信息,比如数据集有创建日期、观测值数、变量数等;变量有类型、长度、格式等。

2:数据集按一行(观测值)一行(观测值)执行。

3.    SAS程序两个基本模块

2222.jpg

数据步:以DATA开始,负责读入和修改数据,创建数据集;

过程步:以PROC开始,分析处理数据集,呈现结果或报表;

1:好的习惯是,在它们的结尾都加上RUN,指示该模块的结束,告诉SAS去执行所有之前的程序行。

2:一个程序可以有多个数据步、过程步。

例1.       学生测验成绩:编号、性别、科目1、科目2、家庭作业。


data Test;

input Subject 1-2 Gender $ 4 Exam1 6-8 Exam2 10-12 HW_Grade $ 14;

datalines;       /* datalines, 数据行开始标志 */

10 M 80  84  A

7  M 85  89  A

4  F 90  86  B

20 M 82  85  B

25 F 94  94  A

14 F 88  84  C

;                 /* 分号, 为数据行结束标志 */

run;

proc print data=Test;

title '学生测验成绩';

run;

proc means data=Test;

title '学生测验成绩分析';

run;


程序说明:Test为数据集名称;input变量名称及其在数据列中的位置,例如1-2表示第12列,变量是字符型需要加上$datalines表示数据开始,注意数据中空格数目与input中列数的对应。

运行结果:

3333.png

4.    SAS程序执行过程

编完SAS程序,点“提交”按钮,将执行代码,报错和执行过程出现在日志窗口,运行结果出现在结果窗口(输出结果也可以改用html格式输出)。

注:修改语法错误后,最好先清空日志窗口,再再次提交程序。

5.    SAS数据集的存取及访问

1SAS数据集采用二级名称,即

libref.filename

其中,libref表示路径名,filename表示数据文件名。例如在路径d:\SASWorks下建立数据集data1,可以用如下代码:


libname mylib 'd:\SASWorks';

data mylib.data1;


程序说明:libname 定义路径变量mylib用来存储路径'd:\SASWorks',之后就可以使用该路径变量,在其路径下创建数据集。

2SAS数据集的存储分为临时存储和永久存储

不指定存储位置,会默认存入Work目录下,此时为临时存储(退出SAS数据将消失);其它目录下的存储都是永久存储。

注:二级名称“Work.data1 等同于一级名称“data1”。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-3-3 08:15:35
zhjx19 发表于 2015-3-2 14:45
刚开始学习SAS,主要参考书《SAS Certification Prep Guide-Base》《The_little_SAS_book》,
一些学习记录 ...
谢谢分享
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-3-9 14:41:10
SAS学习系列03. 导入数据Ⅰ
(部分内容展示,图片省略)

(三)从外部文件导入数据

一、     读取空格或分隔符分开的数据

语法:

        data 数据集名;

infile ‘文件路径+文件名’ <可选参数>;

input 变量1 变量2 ;        

注:infile语句告诉SAS外部数据的存放路径和文件名;

示例:

           data students;

infile 'c:\MyRawData\Studens.dat' DLM = ',';

input Name $ Age Height;

注:这是创建临时数据集work.students,若要创建永久数据集,需要指定二级数据集名称。例如,

libname myworks  'D:\SASWorks';

data myworks.students;

infile 'c:\MyRawData\Studens.dat' DLM = ',';

input Name $ Age Height;

1.    最简单的数据文件

(1) 至少被一个空格,缺失值用.表示;

(2) 字符串不含空格,少于8个字符;

SAS默认字符串是8个字符,多于8个字符需要指定列宽)

1 读取路径c:\MyRawData\下的数据文件ToadJump.dat,内容如下:

图片略

代码:


data toads;

infile 'c:\MyRawData\ToadJump.dat';

input ToadName $ Weight Jump1 Jump2 Jump3;

run;

proc print data = toads;

title 'SAS Data Set Toads';

run;


运行结果:

图片略

注:(1Nosiy的数据溢出到第二行了,但这不影响,SAS会按照变量顺序自动跳到下一行读取;

2)程序将不加选择的逐行逐列的读入所有数据记录。

infile语句可以加上可选参数,

2.    MISSOVER选项(处理每行数据个数长短不一

input语句中输入的几个变量,SAS在观测值中就读取几个变量,如果一行未读完,则进入下一行直到输入的变量都读取了变量值。可以让SAS不进入下一行读取,未赋值的变量读为缺失值。

2 读入下面数据(c:\MyRawData\AllScores.dat),一个学生应该有5门课的成绩,但由于最后两门是自学课程,不是所有学生都完成,故而缺失:此时就需要加上MISSOVER

图片略

代码:


data class102;

infile 'c:\MyRawData\AllScores.dat' MISSOVER;

input Name $ Test1 Test2 Test3 Test4 Test5;

run;

proc print data = class102;

run;


运行结果:

图片略

   

3.    DLMDSD选项

默认读入的数据是空格分隔,若是其它分隔符分隔,在infile语句中加上DLM=’分隔符

        逗号分隔——DLM = ‘,’

        制表符分隔——DLM=’09’X  (制表符的十六进制值是09)

有时后面需要再加上DSD,有三个作用:

a. 忽略引号中数据的“假分隔符”(例2);

b. 自动将字符串中的引号去掉;

c. 将两个相邻的分隔符当作缺失值来处理。

3 读取路径c:\MyRawData\下的数据文件Bands.csv,内容如下:

图片略

注意第3行引号中的逗号并不是分隔符,另外,每行数据长短不一样,所以还需要加上MISSOVER.

代码:


data music;

infile 'c:\MyRawData\Bands.csv' DLM = ',' DSD MISSOVER;

input BandName:$30. GigDate:MMDDYY10. EightPM NinePM TenPM ElevenPM;

run;

proc print data = music;

title 'Customers at Each Gig';

run;


运行结果:

图片略

4.    FIRSTOBS = m OBS=n选项

有的数据文件包括数据的描述,需要用该选项告诉SAS从第m行开始读取到第n行结束。

4 读取如下的数据文件(c:\MyRawData\ IceCreamSales2.dat):

图片略

注意第3行到第5行是有效数据。

代码:


data icecream2;

infile 'c:\MyRawData\IceCreamSales2.dat' FIRSTOBS = 3 OBS=5;

input Flavor $ 1-9 Location BoxesSold;

run;

proc print data = icecream2;

run;


运行结果:

图片略

二、      读取按固定列排列的数据

(1) 同一变量的值都占据相同范围的列内;

(2) 变量值是字符串或者标准数值。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-15 10:35:49
这是little SAS book的中文版吧。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-4-30 15:17:23
里面数据集都没有
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群