使用CLEM表达式进行日期转换(spss建模器)

时间:2015-10-30 13:29:15

标签: date spss spss-modeler

我希望,这里有克莱门汀或IBM SPSS MODELER的专家。 我的问题:如何使用Clem表达式来改变日期? 例如,我有这种格式的日期

27.10.15.15:05
27.10.15.15:45
27.10.15.16:10

如果日期值< 30然后,轮到1分钟 即,不是15:05,而是15:01,如果日期值>然后30分钟,轮到31分钟,即不是15:45,而是15:31。 16:10怎么样,因为它< 16:30然后,轮到16:01。 一般而言,日期必须采用以下格式

27.10.15.15:01
27.10.15.15:31
27.10.15.16:01

一个人告诉我,应该使用这个表达datetime_in_seconds(?) 但我真的不知道如何使用它。请帮我改变这个格式所需的日期

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。也许任何人都需要这个决定。 Modeler对数据转换有不舒服的可能性

if (abs(time_mins_difference(datetime_time(time), datetime_time(datetime_hour(time), 1, 0))) < 15) then
datetime_timestamp(datetime_year(time), datetime_month(time), datetime_day(time), datetime_hour(time), 1, datetime_second(time))
else if (abs(time_mins_difference(datetime_time(time), datetime_time(datetime_hour(time), 1, 0))) > 15) and (abs(time_mins_difference(datetime_time(time), datetime_time(datetime_hour(time), 1, 0))) < 45) then 
datetime_timestamp(datetime_year(time), datetime_month(time), datetime_day(time), datetime_hour(time), 31, datetime_second(time))
else
datetime_timestamp(datetime_year(time), datetime_month(time), datetime_day(time), datetime_hour(time)+1, 1, datetime_second(time))
endif
endif