获取VIP特权
首页 > 模板攻略 > 其他 > 利用SAS读入中文名的Excel文件示例代码

2019-10-16 11:45:14

0已点赞

利用SAS读入中文名的Excel文件示例代码



EXCEL是非常常见的数据格式,用SAS处理数据就涉及到将数据读入进来。读入的方法,前面有所介绍,今天来探讨一个小细节,如果原始的Excel文件的变量名是中文怎么办?因为我们都知道SAS不支持中文名。首先,最简单的办法是直接在Execl里改好,这种方法简单有效,但如果数据量过多,变量很多的时候,另外要批量处理大量的excel文件的时候就不方便了。第二种办法是,忽略变量名直接从第二行开始读入数据,数据读入进来之后,再对默认的系统变量名进行修改。当然处理大量数据的时候,用宏做一个循环也可以实现大批量的操作。还有第三种办法,直接给要操作的excel文件改名。改完名后自动保存,sas就可以直接读入了。好处是“一键”处理数据,直接就从原数据到报表了。

举个最简单的例子:

D盘根目录下,有一个data.xls的文件,其sheet1中有如下数据结构的数据。要改名为如右图的效果。

利用SAS读入中文名的Excel文件示例代码(1)
利用SAS读入中文名的Excel文件示例代码
 

可以用下面的sas程序实现,需要修改或注意的地方用颜色做了注释:

options noxwait noxsync;

x '"C:\Program Files\Microsoft Office\OFFICE11\excel.exe"';

data _null_;

x=sleep(5);

filename comma1 dde 'excel|system';

options xsync;

data _null_;

file comma1;

put '[close("Book1")]';

put '[open("d:\data.xls")]';

run;

filename random dde

'excel|sheet1!r 1c1:r1c3';

data string;

file random;

varname1='name';

varname2='sex';

varname3='age';

;

put varname1 varname2 varname3;

run;

data _null_;

file comma1;

put '[SAVE()]';

put '[QUIT()]';

run;

运行完毕后(时间长短和机器配置有关),打开那个excel文件名字已经改了,可以用sas读了。当然要实现批量处理,你可以用macro修改上面的程序了。变量名多的话可能还需要要做一个数据字典来调用了。这种方法的好处就不多讲了,目的还是“一按运行,万事搞定!”

如果帮到您!点个赞吧!

相关模板

3秒登陆,即可下载

注册即同意《我拉网服务使用协议》&《我拉网隐私政策》

QQ

QQ

邮箱

电话

提交

手机绑定

绑定手机号,账户更安全

中国 +86

手机号格式错误

按住滑块,拖拽到最右边
>>

验证码错误

温馨提示:微信绑定手机号,手机端也可以登录,我拉网将对用户隐私信息给予严格保密。

取消