数学建模社区-数学中国

标题: 如何用SAS读取EXCEL文件 [打印本页]

作者: 花映碧水    时间: 2013-12-29 10:46
标题: 如何用SAS读取EXCEL文件
本帖最后由 花映碧水 于 2013-12-29 13:27 编辑
# x. p; E5 q3 a% a9 l
. E$ d- ~  d6 f. G在此首先非常感谢会员“奚鑫”提供资源,为方便大家观看,特此将全文转载到数学中国方便大家直接查阅~4 e( c+ f( L( x2 `% Q

; x: G% B* t1 p# l3 p2 X
在学习SAS之前很多朋友可能已经会使用其他分析工具进行数据分析了,那么我们自然会想,如何用SAS读取我们用EXCEL或SPSS保存过的数据文件呢。
对于没有使用过其他分析工具的朋友,在工作中也会遇到需要分析别人为我们准备好的数据文件,这些文件的种类可谓是五花八门,在开始分析工作之前我们需要将这些文件导入到SAS数据集中,这就是数据分析中经常提到的数据导入问题。
数据导入看似简单,却是数据分析中非常重要的一个环节,从工作量来看,数据导入和数据诊断占到整个分析项目总时间的百分之九十以上,导入的数据是否正确,直接导致到以后分析工作能否顺利进行,可以说关系到整个分析工作的成败。
这次重点分享如何用SAS导入EXCEL文件,其他类型的文件的导入问题以后会慢慢分享。
有如下需求:
在路径 D:\data 下存放了一个名为mydata.xls的文件,我们需要将存放在这个文件名为sheet1的工作表中的数据导入到名为myfile的数据集中。
使用如下代码实现上面的需求:
proc import datafile = "D:\data\mydata.xls"dbms = excel out = myfile;
sheet = "sheet1";
getnames = no;
run;
proc print data =myfile;
run;
按F3,运行代码,查看日志,确认是否EXCEL文件已经成功读取到SAS数据集当中了。
代码分析:
datafile:需要导入的excel文件爱你名称;
dbms:需要导入的文件类型,这里是excel;
out:SAS数据集的名称;
sheet:数据所在工作表的名称;
getnames:数据中的第一行是否是字段名称,如果是则赋值yes,否则赋值no。
补充说明:
如果数据存储在一个特定的区域内,可以指定区域的名称,比如:数据存储在名为students的区域中。将上面的代码修改为:
proc import datafile = "D:\data\mydata.xls"dbms = excel out = myfile;
sheet = "sheet1";
range = "students";
getnames = no;
run;
proc print data =myfile;
run;
dbms选项可以不添加,因为SAS系统会根据文件的扩展名自动判断文件的类型。

  a3 T0 I/ i9 `. e
由于数据类型和数据质量的不同,使用上面的代码可能会遇到意想不到的问题,希望和感兴趣的朋友一起研究。

% E. L( T& P0 l5 d1 S) N, v' ?7 Z$ l) U' {! V$ V1 O3 }

作者: 奚鑫    时间: 2013-12-29 11:17
为什么没有经过我的同意就复制不的文章呢?
作者: 奚鑫    时间: 2013-12-29 11:31
为什么没有经过我的同意就复制我的文章,还删掉我的帖子,把别人写的东西当成是你写的?
作者: 花映碧水    时间: 2013-12-29 13:36
奚鑫 发表于 2013-12-29 11:31 3 H* e+ D' Y" i7 c
为什么没有经过我的同意就复制我的文章,还删掉我的帖子,把别人写的东西当成是你写的?

& e4 j6 S2 A0 X4 L% v, U% S0 g( Z首先你得帖子没有被删除,删除的话,你也会收到信息~其次我也没有权限给你删除~将你的资料转载到此的原因有:1.数学中国不接受站外个人链接~   2.网站不接受类似推销自己的模式存在~  3. 帖子内容我已经声明~




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5