将数据从excel导入SAS

Posted

技术标签:

【中文标题】将数据从excel导入SAS【英文标题】:Importing data from excel to SAS 【发布时间】:2021-09-20 14:21:23 【问题描述】:

一个面试问题--我没有得到答案,请帮我解决这个问题。

在 excel 文件变量名之间有空格(例如商店名称),如果我们将 excel 数据带到 sas。我们怎么会带上原样,bcz in sas dataset,变量名之间不允许有空格?

代码:

proc import datafile='/home/roshnigupta16020/test (2).xlsx' out=testexcel dbms=xlsx replace; getnames=yes; run;

【问题讨论】:

您尝试过任何代码吗?你试过的代码发生了什么? 这取决于 SAS 选项 VALIDVARNAME 的设置。 documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/acreldb/… @Tom 当我尝试这段代码时,我得到了答案。 proc import datafile='/home/roshnigupta16020/test(2).xlsx' out=testexcel dbms=xlsx replace;获取名称=是;运行; 【参考方案1】:

您的 PROC IMPORT 语法很好。

proc import datafile='/home/roshnigupta16020/test (2).xlsx' 
  out=testexcel dbms=xlsx replace
; 
  getnames=yes; 
run;

根据 VALIDVARNAME 选项的设置,PROC IMPORT 将为变量创建不同的名称。

如果 VALIDVARNAME=ANY,名称将包含空格。这意味着要在 SAS 代码中使用名称,您需要使用名称文字,例如 'Column 1'n

使用其他设置,例如 VALIDVARNAME=V7,PROC IMPORT 将用下划线替换无效字符,例如空格。那么名称将与电子表格中的列标题不完全匹配。但名称将类似于Column_1,更容易包含在您的 SAS 代码中。

【讨论】:

非常感谢@Tom

以上是关于将数据从excel导入SAS的主要内容,如果未能解决你的问题,请参考以下文章

将数据从excel导入sql返回NULL

使用VB将数据从Excel导入Ms Access

将数据从excel导入Python时排除第一行

将excel数据导入SQLServer2005

将 EAN-13 从 Excel 导入 Access

如何将excel导入到数据窗口中