使用SAS脚本将单列Excel转为CSV文件并按输入参数命名输出
SAS单列表Excel转带参数后缀CSV完整实现方案
调用说明
运行脚本时通过SAS内置的SYSPARM参数传入你要追加的标识(比如示例里的210212),命令行调用示例:
sas convert_price.sas -sysparm 210212
如果是SAS Studio/Enterprise Guide环境,在程序运行的参数配置项中填写SYSPARM对应值即可。
完整可运行代码
/* 1. 导入Excel文件 */ PROC IMPORT OUT=WORK.price_levels DATAFILE="你自己的文件路径/price_levels.xls" DBMS=EXCEL REPLACE; RANGE="Sheet1$"; /* 此处替换为你实际的Excel工作表名 */ GETNAMES=YES; /* 如果Excel第一行是表头留YES,不是请改为NO */ MIXED=YES; SCANTEXT=YES; USEDATE=YES; SCANTIME=YES; RUN; /* 2. 导出为带参数后缀的CSV文件 */ proc export data=work.price_levels outfile="你自己的输出路径/price.levels.&sysparm." dbms=csv replace; run;
代码说明
- 路径替换:把代码里的文件路径、输出路径替换为你自己环境的实际路径即可
- 文件名拼接:
&sysparm.是SAS读取传入参数的宏变量,后面额外加的.是宏变量结束分隔符,用来拼接后续内容:- 上述代码生成的就是示例要求的无后缀
price.levels.210212文件 - 如果需要带CSV后缀,把outfile改为
"你自己的输出路径/price.levels.&sysparm..csv"即可,会生成price.levels.210212.csv格式的文件
- 上述代码生成的就是示例要求的无后缀
- 可选调整:如果不需要导出CSV的表头行,可以在
proc export块内添加putnames=no;语句
内容的提问来源于stack exchange,提问作者Rajp
相关产品推荐
相关产品推荐

