【SASBASE】IMPORT过程(适⽤于CSV⽂件及其他分隔符
⽂件)
1、PROC IMPROT的特点
默认情况下,PROC IMPORT扫描数据⽂件的前20⾏,并据此为变量分配变量类型(数值型or字符型);
⾃动为字符型变量分配长度,为数值型变量分配格式为BEST32(⾃⼰总结,不⼀定对);
将连续的两个分隔符看作是缺失值;
读⼊某⼀⾏数据时,若该⾏数据不⾜以分配给变量,则分配后⾯的变量为缺失值:
2、PROC IMPORT的⼀般形式为:
1 PROC IMPROT DATAFILE='filename' OUT=data-set;
DBMS Identifier和REPLACE: SAS会通过⽂件的扩展名来决定⽂件类型,例如 .csv(DBMS=CSV)和 .txt(DBMS=TAB)。若⽂件不是CSV或者TXT⽂件,则需要在IMPORT语句后⾯加上DBMS=option选
项。另外,为防⽌已有与OUT=data-set同名的⽂件,加上REPLACE来覆盖。
1 PROC IMPROT DATAFILE='filename' OUT=data-set DBMS= REPLACE;
其他常⽤options:
1 /*options of PROC IMPORT*/
2 Datarows=n  *从第n⾏开始读⼊数据,默认值是1;
3 Delimiters='delimiter'  *适⽤于分隔符不是comma、tab、space的情形,默认space;
4 Getnames=NO  *命令SAS不要从input⽂件中的第⼀⾏读⼊变量名,变量名为VAR1、VAR2。。。默认值为YES;
5 GUESSINROWS=N  *利⽤前n⾏来决定变量类型,默认为20;注意并不是放在PROC IMPROT后⾯,⽽是另取⼀⾏。
1 PROC IMPORT DATA='D:\⽤户\CHENYING146\Desktop\CY\数据需求\20140724_gcg\data\ZC_0531.csv'
2                                OUT=DATA.ZC_0531 DBMS=CSV REPLACE;
3 GUESSINGROWS=2000;
4 RUN;
3、PROC IMPORT导⼊EXCEL⽂件:
1 PROC IMPORT DATAFILE='file-name.xls'
2                      OUT=data-set
3                      DBMS=Excel/XLS
4                      SHEET=”sheet-name“
5                      RANGE="sheetname$UL:LR"
import语句6                      GETNAMES=NO REPLACE;
7 RUN;
备注:1. DBMS=Excel默认读取仅前8⾏来判别变量的类型,⽽DBMS=XLS会读取所有⾏;2. UL:例⼦R2C1,到cell级
4、PROC IMPORT导⼊ACCESS⽂件:
1 PROC IMPORT DATATABLE=’table-name.mdb'
2                      OUT=data-set
3                      DBMS=ACCESS/ACCESS97 REPLACE;
4 DATABASE=‘database-path’;
备注:特别要注意,导⼊ACCESS⽂件时,需要⽤DATATABLE=选项和DATABASE=语句

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。