sas常用选项

System options:

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窗口输出

Data step options:

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

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

Proc sort options:

nodupkey :保证by子句指定的排序key是唯一的,如果排序前的数据集若干记录的排序key的值相同,则只保留一条记录,删除其他的;如果删除行为确实发生,log中会有记录,我们常用这个方法来检查数据集的uniq key是否唯一,也就是用于排序的by子句指定的用于排序的变量列表是否完备。

Proc summary options:

nway:只将最大的_TYPE_值指定的分类进行输出,_TYPE_值表示分类级别

e.g. proc summary data=test;

class stat salesrep;

var sales;

output out=test2

sum(sales)=totsales

max(sales)=maxsales

nmiss(sales)=badsales

;

run;

这里_TYPE_=

0:表示整个数据集

1:表示基于每个salesrep的统计

2:表示基于每个stat的统计

3:表示基于每个stat中的每个salesrep的统计

如果在本例中指定nway,就会输出基于每个stat中的每个salesrep的统计(_TYPE_=3)

missing:将missing值作为一个有效的类进行统计

Data step infile:

DLM:delimiter, DLM=',' 或者写作delimiter=',',如果有多个字符一起作为分隔符,比如:

1!2+3!4

a+3!5!4

可以写作delimiter='!+'

DSD:配合DLM使用,将连续两个分隔符看作missing value,将引号引用的部分作为值赋给变量,从而忽略引号

MISSOVER:如果一行数据不完整,不要跳到下一行读取,而是将剩余变量全部赋为missing value后再跳到下一行继续读取
LRECL: 默认读取时,一行的buffer只有256bytes,如果行长超过这个默认值,自己需要用此选项指定行buffer,使之能足够容纳一行的数据。比如:LRECL=32767。

Data step set:

nobs: 定义用于存储观察数目的变量,nobs=变量名

如:

data test;

set srcdb nobs=numobs;

grp_id=floor(_N_*100/numobs)+1;

run;

Proc Import:

datafile:要导入的文件

out:输出的数据集

dbms:文件类型,可以是tab csv dlm excel2000等等

replace:是否替换已经存在的数据集

三个子句(其中delimiter只针对dbms=dlm的情况):

delimiter:制定分隔符

getnames:是否从文件首行读入变量名

datarow:从那一行开始读入数据

如:

proc import datafile='c:\test.csv' out=test dbms=dlm replace;

delimiter=',';

getnames=no;

datarow=2;

run;

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值