【发布时间】:2021-12-28 08:54:43
【问题描述】:
我有一个名为月份的列
| month |
|---|
| JAN |
| FEB |
| ... |
| DEC |
我想知道如何在 SAS 中将它们转换为 1,2,3,...,12。非常感谢。
【问题讨论】:
标签: sas
我有一个名为月份的列
| month |
|---|
| JAN |
| FEB |
| ... |
| DEC |
我想知道如何在 SAS 中将它们转换为 1,2,3,...,12。非常感谢。
【问题讨论】:
标签: sas
使用 informat 将其转换为数字并使用month() 获取月份。
data have;
input month :$3. @@;
datalines;
JAN FEB DEC
;
data want;
set have;
x=month(input(month||'21',??monyy.));
run;
【讨论】:
将月份与年份连接起来,使用MONYY. 格式,使用MONTH. 格式,最后使用另一个input() 输出为数值。
data have;
input month :$3. @@;
datalines;
JAN FEB DEC
;
data want;
set have;
month_num=input(put(input(catt(month, year(today())), monyy.), month.), 2.);
put month month_num;
run;
Results:
JAN 1
FEB 2
DEC 12
【讨论】: