1,变量名命名规范:以字母或者下划线开始,可包含字母、下划线、数字,且不超过32个字符;

2,INFILE用于读取外部数据文件,一般于FILENAME(和LIBNAME用户一致,但路径要精确到文件名(、、.TXT/DAT等))连用。

3,INPUT语句用于定义字段变量,可用于读去外部文件(INFILE)、CARDS、DATALINES。

4,变量类型转换规则:①赋值:以赋值目标的变量类型而定自动转化;②做运算→数值型;③做字符连接→字符型;④经过了字符处理函数→字符型;

5,字符和数值型变量在数据集中的显示:①字符型→右对齐→缺失为空格;②数值性→左对齐→缺失为“.”;

6,在DATA步中一般情况下出现的字符都会默认为一个变量,若想写字符型常量则要用“”、‘’括起来。(若字符常量本身还有“”则用‘’括起来,相反则用“”括起来。)

7,日期型常量包括:日期(DATE)、时间(TIME)、日期时间(DATETIME)3种。这三个类型的常量必须用引号括起来并且后面加常量对应的字母D、T、DT,表示日期、时间、日期时间。

8,注意:十六进制数常量必须用单引号括起来,后面加字符X。

9,筛选语句IF和WHERE,WHERE是在编译阶段执行,即程序执行之前就先筛选,大大提高程序效率。IF语句在执行阶段执行,可用于新建变量的筛选。(一般情况下能用WHERE则用WHERE,缺点是:WHERE语句对变量类型的兼容性较低,严格控制“=”两边的数据类型相同,若多个WHERE语句出现只认最后一个WHERE语句),验证程序如下:

DATA A;
INPUT ID X $;
CARDS;
R
T
O
P
;
RUN;
PROC PRINT DATA=A;
WHERE ID=;
WHERE X="P";
VAR ID X;
RUN;

输出结果为:

SAS 系统
Obs ID X
4 5 P
 
10,格式修饰符:①:,例如:$20.从非空格开始读,知道遇到空格、溢出、数据结束为止。②&,例如&:$20数据中还有一个或者一个以上的空格,直到遇到连续两个或两个以上的连续空格、或者溢出为止。③~,L例如~&:$20.数据中含有引号或者分隔符号的数据。
11,指针控制:①@N:指从第N列位置开始(包含空格);②N1-N2:读第N1列到第N2列之间的数据;③@,指针停在当前位置,知道遇见下一个INPUT;④@@,反复写进“@@”前面的变量中(在外部文件的一行数据要携程SAS数据集的多行时使用)。验证如下;

DATA A;
INPUT ID X $ @@;
CARDS;
1 R 2 T
4 O 5 P
;
RUN;

DATA A;
INPUT ID X $ @@;
CARDS;
1 R
2 T
4 O
5 P
;
RUN;

以上两段代码输出的结果一样都是四条观测;

 
12,INPUT语句:定义变量并读入数据到数据集(数据流→数据集),PUT语句定义要从数据集中读出数据变量(数据集→数据流);
13,INFORMAT:以什么格式输入,FORMAT:以什么格式输出。(例如:INFORMAT SY_DT MMDDYY10.;意为告诉SAS这是一个日期时间型的数据,请存为日期时间型数据。)
14,OPTIONS,用来改变SAS系统的默认设置,程序可以查看所有选项:
PROC OPRIONS;
RUN;

obs:表示需要处理的最后一行observation,如果指定其为max,就表示处理到最后一条observation

  firstobs:表示需要从第几行observation开始处理,默认是1observation

  msglevel:默认值是N,仅打印notes,warnings和error信息,如果设为I,则除了打印N选项的信息,同时打印附属信息,包括索引的使用,合并处理,排序等附加信息

  errors:指定最多有多少错误可以在log中显示(也可以写成error=num,编译时按errors处理)

  macrogen:将宏扩展的结果显示在log里

  compress:是否采用压缩格式存储数据集

  missing:指定用于替换missing value的字符,默认是(.)

  ps(pagesize):输出时每页行数

  ls(linesize):输出时每行字数

  center/nocenter:指定输出是否中间对齐

  date/nodate:指定输出是否包含日期

  replace/noreplace:如果dataset已经存在,指定是否覆盖

  print/noprint:指定是否在output窗口输出

date:输出页码显示日期      nodate:输出页码不显示日期

center:输出页居中     nocenter:输出页不居中

number:有页码    nonumber:无页码

mprint 打印宏的每一次执行过程在日志中  nomprint 不打印、、

SAS零散知识总结的更多相关文章

  1. iOS网络相关零散知识总结

    iOS网络相关零散知识总结 1. URL和HTTP知识 (1) URL的全称是Uniform Resource Locator(统一资源定位符). URL的基本格式 = 协议://主机地址/路径   ...

  2. 零散知识记录-一个MQ问题

    [背景]我有一项零散工作:维护大部门的一台测试公用MQ服务器.当大部分MQ被建立起来,编写了维护手册,大家都按照规程来后,就基本上没有再动过它了.周五有同学跟我反映登录不进去了,周日花了1个小时来解决 ...

  3. 11-30 k线图demo中学到的零散知识

    1. 使用NSObject类的方法performSelectorInBackground:withObject:来创建一个线程. 具体的代码: [Object performSelectorInBac ...

  4. C# 零散知识 扩展方法 类型约束

    今天看到这么一段代码,我看下面调用了NotifyPropertyChanged定义了两个参数,但是调用的时候只写了一个参数.后来查了下,原来这个是扩展方法的用法, 就是说给T扩展了一个方法Notify ...

  5. 零散知识记录-Jira的安装

    Jira不支持openjdk,在linux下需要卸载后,装个jdk才行.

  6. oracle 零散知识汇集

    1. Select '登陆' + 2 From dual会报错: ora- 01722 无效数字,原理是oracle把'登陆'当成数字来和2进行加法运算. Select '登陆'|| 2 From d ...

  7. css,js零散知识的整理

    在同一个dom上以冒泡和捕获的方式绑定一个事件,如果事件源是该元素,则是先绑定的哪一个就先执行哪一个,事件源是dom的子孙节点,则先执行捕获事件

  8. js 零散知识总结

    网页播放声音 这个非常简单,我们只需要在html和js设置即可.首先看html代码 html代码 <audio id="sound" autoplay="autop ...

  9. tensorFlow 零散知识

    收集一些碰到的关于细节的函数在这里记录下 1.tf.flags.DEFINE_xxx() 读别人家的代码的时候经常看到这个,结果两三天不看居然忘记了,这脑子绝对上锈了,决定记下来免得老是查来查去的.. ...

随机推荐

  1. [VM workstation]VM workstation 中的虚拟机连不上网络

    之前一直没有想到虚拟机连不上网络是VM workstationg 自身的原因. 突然在进入虚拟机时看见提示:VM 桥接网桥无法正常工作 于是便进入 编辑→虚拟网络编辑器 中将虚拟网卡都重置了一下就可以 ...

  2. Brophp框架开发时连接数据库读取UTF8乱码的解决(转)

    Brophp框架开发时连接数据库读取UTF8乱码的解决办法 (2012-09-15 10:41:22) 转载▼ 标签: 杂谈 it php 分类: 建站技术 Brophp框架开发时连接数据库读取UTF ...

  3. iOS之分别使用代码和storyboard、xib为控件设置圆角(以按钮为例)

    首先我们看一下代码是如何给按钮设置圆角的: 我们再来看看如何在storyboard或xib中给按钮设置圆角: 1.在storyboard或xib中添加按钮后,设置标题和背景色,做好约束: 2.点击 S ...

  4. 1 Two Sum

    // Java public int[] twoSum(int[] nums, int target) { int[] answer = new int[2]; for (int i = 0; i & ...

  5. Appium移动自动化测试之安装Appium

    第一次学习appium,希望此安装教程可以帮助初学者,共同学习. Appium官网介绍:Appium是与本地,使用开源自动化测试框架, 混合和移动Web应用程序. 它驱动iOS和Android应用使用 ...

  6. BestCoder Round #90 //div all 大混战 一题滚粗 阶梯博弈,树状数组,高斯消元

    BestCoder Round #90 本次至少暴露出三个知识点爆炸.... A. zz题 按题意copy  Init函数 然后统计就ok B. 博弈 题  不懂  推了半天的SG.....  结果这 ...

  7. Linux下查看IP的命令:ifconfig -a

    按照指南实践,在NFS挂载测试和tftp服务器架设时,均需用到本机的IP地址,怎么查看呢? 很简单,键入命令:ifconfig -a 这个命令具体是怎么定义的呢?有时间再查阅,先跑遍指南.

  8. KVM 虚拟化 初体验

    KVM 是 Kernel-based Virtual Machine 的简称,是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案: 使用 KVM ,可允许运行多个虚拟机,包括 Linux 和 ...

  9. asp.net web api集成微信服务(使用Senparc微信SDK)

    /// <summary> /// 微信请求转发控制器 /// </summary> [RoutePrefix("weixin")] public clas ...

  10. A*寻路算法(JavaScript实现)

    参考资料:http://www.cnblogs.com/zhoug2020/p/3468167.html               http://www.cnblogs.com/lipan/arch ...