如何使用 sas 中的 day、month 和 year 函数


您可以使用 SAS 中的DAYMONTHYEAR函数从日期变量中提取日、月和年作为数值。

以下示例展示了如何在实践中使用这些功能。

示例 1:从 SAS 中的日期提取日、月和年

假设我们在 SAS 中有以下数据集,显示了七个人的出生日期:

 /*create dataset*/
data original_data;
    format birth_date date9. ;
    input birth_date: date9. ;
    datalines ;
01JAN2021
22FEB2022
14MAR2022
29MAY2022
14OCT2023
01NOV2024
26DEC2025
;
run ;

/*view dataset*/
proc print data = original_data; 

我们可以使用以下代码创建三个新变量,分别表示每个人的出生日期的年、月、日:

 /*create new dataset*/
data new_data;
set original_data;
day = DAY (birth_date);
month = MONTH (birth_date);
    year = YEAR (birth_date);
run ;

/*view new dataset*/
proc print data = new_data; 

SAS 中的日、月、年函数

这三个新变量分别显示Birth_date变量的日、月和年。

示例 2:从 SAS 中的日期仅提取月份和年份

以下代码显示如何创建一个新变量,该变量仅显示 SAS 中日期变量的月份和年份:

 /*create new dataset*/
data new_data;
    set original_data;
    month_year = birth_date;
    format month_year mmyyn6. ;
run ;

/*view new dataset*/
proc print data =new_data; 

请注意,新的month_year变量仅包含birth_date变量的月份和年份。

如果您希望月份出现在年份之后,只需使用格式yymmn6 即可。反而:

 /*create new dataset*/
data new_data;
    set original_data;
    month_year = birth_date;
    format month_year yymmn6. ;
run ;

/*view new dataset*/
proc print data =new_data;

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

如何在SAS中使用过程摘要
如何在SAS中重命名变量
如何在 SAS 中创建新变量
SAS中如何删除重复项

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注