日期时间特征衍生和日期时间间隔
日期时间变量通常会进行以下处理:
在SPL中提供了可以自动处理日期时间变量的函数
A.datederive(T)和P.datederive(cn, T)可以对日期时间型变量衍生出多个建模可用的变量,并且衍生变量自动执行后续预处理。具体来讲就是函数会将变量拆成日期和时间两部分,然后对日期变量衍生出月、季节、节假日等字段,时间变量衍生出上午、下午等字段,并且会自动剔除衍生字段中的单一变量,高缺失率变量等无用变量,执行可能的平滑化操作。
A.dateinterval(T)和P.dateinterval(cns, T)可以衍生计算多个日期时间型变量之间的日期差,并且衍生变量自动执行后续预处理。
例如:
A |
|
1 |
=100.(date(2020,rand(11)+1,rand(28)+1)) |
2 |
=100.(date(2021,rand(11)+1,rand(28)+1)) |
3 |
=100.(rand(500)) |
4 |
=A1.datederive@i(A3) |
5 |
=A2.datederive@r(A4(2)) |
6 |
=[A1,A2].dateinterval@i(A3) |
A1, A2随机生成100个日期时间数据,分别表示建模数据和预测数据
A3 随机生成100个小于500的整数
A4 对变量A1进行衍生,返回衍生结果和衍生记录Rec。@i指明目标变量是整数
A5根据衍生记录,在预测数据上进行相同衍生。@r表示在预测集上进行相同的预处理操作
A6 计算A1,A2的日期间隔,并自动进行后续预处理动作