ImageVerifierCode 换一换
格式:PDF , 页数:4 ,大小:277.72KB ,
资源ID:3176184      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3176184.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SAS导入数据.pdf)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SAS导入数据.pdf

1、SASSAS 培训第一讲培训第一讲 课程:数据的导入和导出 部门:创新业务部 时间:2014/11/19 内容概要:1.菜单操作 2.Proc import 3.Infile 语句 4.Libname 5.批量导入数据(不讲)6.数据的导出(直接使用菜单方法或 proc export,不讲)7.各种导入方法的优缺点 数据类型:Excel 数据,csv 数据(逗号分隔符),Access 数据 详细讲解:1.1.菜单导入数据菜单导入数据(只介绍(只介绍 EXCELEXCEL 数据导入,其他类似)数据导入,其他类似)1)打开导入数据向导,如下图;2)选择将要导入的数据类型,然后点击“next”;3)

2、选择将要导入的数据的物理地址,点击“OK”进入下一步;4)选择将要导入的 table,点击“next”;5)选择将数据导入哪个逻辑库并填入数据集名称,点击“next”;6)该步让用户选择是否将菜单操作背后的代码导出,若无必要直接点击“Finish”,完成数据的导入。2.2.ImportImport 过程步导入数据过程步导入数据 1)Excel 表格数据 proc import out=index1 datafile=C:UsersAdministratorDesktop399101.xlsx dbms=excel replace;range=sheet1$;getnames=NO;run;参数

3、解释:dbms规定外部文件格式的标示名 replace规定替换已存在的文件 range指定将要导入的数据范围 getnames规定是否将第一行数据作为变量名 2)csv 数据 proc import out=import_csv datafile=C:UsersAdministratorDesktopdata_lesson1鞍山20141112.csv dbms=csv replace;delimiter=,;getnames=yes;datarow=2;guessingrows=4000;run;参数解释:dbms规定外部文件格式的标示名 replace规定替换已存在的文件 delimite

4、r规定外部文件分隔符 getnames规定是否将第一行数据作为变量名 datarow规定从第几行开始读取数据 guessingrows规定根据前多少条数据确定变量格式 说明:a)对于文件格式的标示名与源文件格式之间的对应关系参SAS 编程技术教程 b)一般情况都加上 replace,以免重新导入数据时出错,当然也可以不加 c)若文件含分隔符,则必须规定 delimiter 选项 d)当 getnames=yes 时,datarow 应大于 1 e)guessingrows 最大取值为 4000,若缺省此项,SAS 默认将第一条数据的格式作为变量格式。对于数据量超过 4000 条的数据最好不要使

5、用 proc import 导入数据,有可能会导致字符被截断等情况。接下来介绍的 infile 方法可以解决这一点。3)Access 数据 proc import out=import_ac table=content dbms=access replace;database=C:UsersAdministratorDesktopdata_lesson1SpiderResult.mdb;uid=;pwd=;run;3.3.InfileInfile 语句导入数据语句导入数据 在 data 步中使用 infile 语句,可以通过先定义变量的输入格式,再导入数据,避免出现字符截断等情况。Infile

6、 语句导入数据的基本格式如下:data infile_csv;infile C:UsersAdministratorDesktopdata_lesson1鞍山20141112.csv dsd delimiter=,firstobs=2 truncover lrecl=1000;informat area_plate$munity$60.address$200.price$20.estate_time$40.constr_type$50.covers_area$30.constr_area$30.developer$100.property$100.plot_ratio$12.green_rat

7、e$12.property_fee$50.dta_date$10.pageurl$150.;input area_plate$community$address$price$estate_time$constr_type$covers_area$constr_area$developer$property$plot_ratio$green_rate$property_fee$dta_date$id$pageurl$;run;参数解释:dsd表示源数据是分隔符敏感性的,即数据中存在非空格的分隔符 delimiter规定外部文件分隔符 firstobs规定从第几行开始读取数据,类似上文中的 dat

8、arow obs读取数据的行数 truncover当部分行数据长度小于其他行时,使用该选项防止 SAS 读入到下一行 lreclSAS 默认每条数据的长度不超过 256 个字节,当一条记录的长度大于该值时,会导致部分字段读取出错,使用 lrecl 可以定义单条数据的最长长度。4.4.LibnameLibname 生成库文件生成库文件 Libname 可以用来定义一个逻辑库,每个逻辑库对应一个数据库引擎,默认的情况下数据库引擎为 V9(SAS 自带数据库引擎)。当然,也可以自由选择其他库引擎。在导入 EXCEL 数据时可以定义一个库引擎为 EXCEL 的逻辑库,可以直接将 EXCEL 中的各张

9、sheet 直接导入到 SAS 中。Libname d excel C:UsersAdministratorDesktop399101.xlsx;data lib_ex;set d.399101$n;run;对于 Access 数据亦然:libname c access C:UsersAdministratorDesktopdata_lesson1SpiderResult.mdb;5.5.批量导入(批量导入(不讲不讲)1)批量导入一个文件中的所有 csv 数据 需要编写一个宏,下面是批量导入 100 个城市的房价数据的代码:%macro directory(dir);%let rs=%sysf

10、unc(filename(filref,&dir);%let did=%sysfunc(dopen(&filref);%let nobs=%sysfunc(dnum(&did);%do i=1%to&nobs;%let name=%qscan(%qsysfunc(dread(&did,&i),1,.);%let ext=%qscan(%qsysfunc(dread(&did,&i),-1,.);data fangjia&i;infile&dir.&name.&ext dsd delimiter=,firstobs=2 truncover lrecl=1000;informat area_pla

11、te$munity$60.address$200.price$20.estate_time$40.constr_type$50.covers_area$30.constr_area$30.developer$100.property$100.plot_ratio$12.green_rate$12.property_fee$50.dta_date$10.pageurl$150.;input area_plate$community$address$price$estate_time$constr_type$covers_area$constr_area$developer$property$pl

12、ot_ratio$green_rate$property_fee$dta_date$id$pageurl$;run;%end;%let rc=%sysfunc(dclose(&did);%mend;%directory(E:房价项目房价网数据20141113);2)批量导入一张 Excel 表格中的多张 sheet 或批量导入 Access 文件中多张 table 使用 libname 导入方法即可。6.6.数据的导出数据的导出 略 7.7.各种导入方法的优缺点各种导入方法的优缺点 1)菜单操作方便,但对于有分隔符的数据(csv,txt),只根据前 20 行来确定各变量的属性,容易导致数据截断;2)proc import 对于不同数据类型,导入方法不尽相同,同样对于有分隔符的数据最多只能根据前 4000 条数据确定各变量的属性,也会导致数据截断;3)infile 语句不能导入 EXCEL 或 ACCESS 文件,但对于有分隔符的数据效果很好,还可以避免数据截断;4)libname 不能导入 csv 或 txt 文件,但对于 Excel 或 Access 有很好的批量导入解决方法。(完)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1