如何将数据从 sas 导出到 excel(附示例)
您可以使用proc Export将数据从 SAS 快速导出到 Excel 文件。
此过程使用以下基本语法:
/*export data to file called my_data.xlsx*/ proc export data =my_data outfile ="/home/u13181/my_data.xlsx" dbms =xlsx replace ; sheet ="FirstData"; run ;
以下是每行的作用:
- data :要导出的数据集的名称
- outfile :导出 Excel 文件的位置
- dmbs :用于导出的文件格式
- 替换:如果文件已存在则替换该文件
- sheet : Excel 工作簿中的工作表上显示的名称
以下示例展示了如何在实践中使用此功能。
示例 1:将数据集导出到 Excel 工作表
假设我们在 SAS 中有以下数据集:
/*create dataset*/ data my_data; inputABC ; datalines ; 1 4 76 2 3 49 2 3 85 4 5 88 2 2 90 4 6 78 5 9 80 ; run ; /*view dataset*/ proc print data =my_data;
我们可以使用以下代码将此数据集导出到名为my_data.xlsx的 Excel 文件:
/*export dataset*/ proc export data =my_data outfile ="/home/u13181/my_data.xlsx" dbms =xlsx replace ; sheet ="FirstData"; run ;
然后,我可以导航到计算机上导出文件的位置并在 Excel 中查看它:
Excel 中的数据是 SAS 数据集,Excel 工作簿中的工作表称为“第一数据”,正如我在proc 导出语句中指定的那样。
示例 2:将多个数据集导出到多个 Excel 工作表
假设我们有两个 SAS 数据集:
/*create first dataset*/
data my_data;
inputABC ;
datalines ;
1 4 76
2 3 49
2 3 85
4 5 88
2 2 90
4 6 78
5 9 80
;
run ;
/*create second dataset*/
data my_data2;
inputDEF ;
datalines ;
1 4 90
2 3 49
2 3 85
4 5 88
2 1 90
;
run ;
我们可以使用以下代码将两个数据集导出到不同工作表中的同一个 Excel 文件中:
/*export first dataset to first sheet in Excel*/
proc export data =my_data
outfile ="/home/u13181/my_data.xlsx"
dbms =xlsx
replace ;
sheet ="FirstData";
run ;
/*export second dataset to second sheet in Excel*/
proc export data =my_data2
outfile ="/home/u13181/my_data.xlsx"
dbms =xlsx
replace ;
sheet ="Second Data";
run ;
然后,我可以导航到计算机上导出文件的位置并在 Excel 中查看它。
标题为“First Data”的第一个工作表包含第一组数据:
标题为“第二数据”的第二张表包含第二组数据:
其他资源
以下教程解释了如何在 SAS 中执行其他常见任务: