SAS数据输入总结

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SAS学习总结

一、SAS的数据录入

(1)直接输入

data first;

input name $ salary;

datalines;

a 12

b 34

c 56

d 78

;

run;

注意:datalines的位置以及数据录入后的分号

(2)借助infile 可读入文本格式为dat、txt、csv

A.最简单的形式

data first;

infile 'c:\users\lichao\desktop\sas\data\toadjump.dat';

input Toadname $ Jump1 Jump2 Jump3 Jump4;

run;

proc print data=work.first;

run;

B.有空格的情况,需要数一下

data second;

infile 'c:\users\lichao\desktop\sas\data\onionring.dat';

input Name $ 1-19 Jump1 22-24 Jump2 25-28 Jump3 30-31 Jump4 33-34 Jump5 37 Jump6 40;

run;

proc print data=work.second;

run;

C.格式重复的情况

data third;

infile 'c:\users\lichao\desktop\sas\data\exercise.dat';

input Num1 Num2 Num3 @@;

run;

proc print data=work.third;

run;

注意:@@的用法

D.其他的格式

Ⅰ.输出特定的行

data icecream;

infile 'c:\users\lichao\desktop\sas\data\icecreamsales2.dat' firstobs=3 obs=5;

input Flavor $ 1-9 Location Boxessold;

run;

proc print data=icecream;

run;

注意:firstobs和obs的位置不要改变,而且两者可以单独使用

Ⅱ.有缺失值

data class;

infile 'c:\users\lichao\desktop\sas\data\allscores.dat' missover;

input name $ test1 test2 test3 test4 test5;

run;

proc print data=class;

run;

注意:在有缺失值的情况下,如果输出有错误的话就用missover

Ⅲ.非正常的输入:

data third;

infile 'c:\users\lichao\desktop\sas\data\pumpkin.dat';

input Name $16. num 3. type $2. date $11. (num1 num2 num3 num4 num5) (4.1); run;

proc print data=third;

run;

注意:16. 和3. 、4.1等的表示方法,都是表示宽度,相比较数列数的方法更有效;

输入格式相同的话可以加括号把格式写在后面的括号里。

Ⅳ.日期的输入:

按照数值处理,根据情况,使用MMDDYYw. 或者DDMMYYw.

(3)import 录入其他格式的文件(可导入的格式非常多)

proc import datafile='c:\users\lichao\desktop\sas\data\second.xls' dbms=xls out=mydata replace; sheet="sheet1$";

range="a1:b3";

run;

proc print data=mydata;

run;

注意:sheet表示单元表的名字,range表示导入的数据范围

相关文档
最新文档