【问题标题】:RapidMiner TimeStamp preprocessingRapidMiner 时间戳预处理
【发布时间】:2016-04-22 09:58:48
【问题描述】:

我正在尝试使用三种不同的传感器数据进行预测。每个传感器都有周期性,测量时刻也不相同(例如sensor1data_time=10:01;sensor2data_timestamp=10:03;sensor3data_timestamp=10:05)。

我为演示手动完成了这项任务,但现在我需要将其自动化以开发预测模型。

推荐任何预处理任务?

提前致谢

【问题讨论】:

    标签: timestamp preprocessor weka rapidminer


    【解决方案1】:

    我会将时间四舍五入到最接近的十分钟。要使用的运算符是Generate Attributes。我倾向于使用自 1970 年 1 月 1 日以来的秒数。以下片段显示了您可以使用的功能。我假设您有一个名为 datestr 的属性,其中包含格式为 13-01-2016 23:01:01 的日期。

    attribute name    function expression    
    -------------------------------------------------------------------
    date              date_parse_custom(datestr, "dd-MM-yyyy HH:mm:ss")
    epochdate         date_diff(date_parse(0), date)/1000
    dateToTenMins     600*round(epochdate/600)
    

    纪元日期以毫秒为单位,因此除以 1000 为秒。

    【讨论】:

    • 我明白你的意思。感谢您的帮助。但是,如果多个值四舍五入到相同的时间戳,我可以使用FilterExamples 运算符删除重复值吗??
    • 您可以使用Aggregate 运算符来计算具有相同时间戳的示例数。您会期望每个传感器的每个时间戳都会看到 1。
    • 你的建议真的很有帮助:) 再问一个问题。我不明白你为什么使用600。我的意思是,如果不是四舍五入到最接近的五分钟,以防我想四舍五入到较低的小时?例如,如果对于 1:03 和 1:53,我想为它们都获得 1:00?我怎么能这样做??
    • 我的错误 - 600 是最近的 10 分钟。您将使用 300 表示 5 分钟,使用 3600 表示最近的一小时。我将编辑答案,使其更好地独立。
    • 是的,我终于弄明白了。您为我提供了解决问题所需的确切信息。谢谢!! :)
    猜你喜欢
    • 1970-01-01
    • 2016-07-11
    • 2020-05-11
    • 1970-01-01
    • 2010-12-30
    • 2021-01-17
    • 2014-07-16
    • 2021-08-30
    相关资源
    最近更新 更多