【发布时间】:2017-07-25 09:50:50
【问题描述】:
我希望在 SAS 中创建一种自定义格式,它将诸如 NA、EU 和 AF 之类的大陆代码转换为北美、欧洲和非洲。一切都已设置好,我在 .csv 文件中读取了包含国家及其大陆代码的 SAS,我可以打印一张表格,显示每个国家及其各自的国家代码。现在我只想使用自定义格式将代码转换为大陆名称。到目前为止,我有以下内容(我错过了所有 DATA 步骤,因为它工作正常):
LIBNAME newlib 'C:\Users\C*****\Documents\My WPS Files';
PROC FORMAT lib = newlib;
VALUE $cont
'AS' = 'Asia'
'EU' = 'Europe'
'NA' = 'North America'
'SA' = 'South America'
'AF' = 'Africa'
'OC' = 'Oceania'
'' = 'Unknown';
RUN;
PROC PRINT DATA = newlib.life_ex (OBS = 10) NOOBS;
TITLE 'Top 10 Life Expectancies in 2010';
VAR Country YR2010 Continent;
FORMAT Continent$cont.;
RUN;
如果我运行它,我会收到以下错误。
2947 FORMAT Continent$cont.;
^
ERROR: Format $cont was not found or could not be loaded
我不明白这一点,因为我正在执行我之前在其他 SAS 程序中使用过的确切步骤,这些程序运行良好,但这个程序不会执行。如果我删除 FORMAT Continent$cont.行,程序运行完美,没有错误,但显然我的代码没有转换。有什么帮助吗?
【问题讨论】:
标签: sas