如何编写时间戳之间的差异脚本大家好,
我正在编写一个脚本来检查用户丢失的数据。 我们每 5 分钟记录一次数据。 如果 2 个时间戳之间的差异大于 5 分钟,我们定义该时间段内有缺失数据。我的数据表中的时间格式如下所示:
2018-07-09 00:58:07.7030000
2018-07-09 00:58:07.7030000
2018-07-09 00:58:07.7030000
有谁知道我应该如何编写脚本来选择时间戳超过 5 分钟的单元格?
多谢,
温妮
回复:如何编写时间戳之间的差异脚本嗨,吉姆,我已经解决了这些问题。 再次感谢你!
回复:如何编写时间戳之间的差异脚本鉴于您提供的细节,我认为这对您来说可能是一个很好的解决方案
dt2:ReadTime << Data Type( Numeric ) << Set Modeling Type( Continuous )
<< Format( "yyyy-mm-ddThh:mm:ss", 19 );
dt2 << New Column( "Missing Data?",
character,
formula(
If( Date Difference( Lag( :ReadTime ), :ReadTime, "Minute" ) > 5,
"Missing Data",
"No Missing Data"
)
)
);
回复:如何编写时间戳之间的差异脚本嗨,吉姆,
非常感谢你的回复。 我已根据您的建议进行了更改。 我的脚本如下所示:
dt2:ReadTime << Data Type( Numeric ) << Set Modeling Type( Continuous ) << Format( "yyyy-mm-ddThh:mm:ss", 19 );
If( Date Difference( Lag( :ReadTime ), :ReadTime, "mm" ) > 5,
dataGood = "Missing Data",
dataGood = "No Missing Data"
);
数据类型和格式修改成功,但是不知道怎么查看dataGood。 我需要为 dataGood 创建一个新列吗?
多谢!
回复:如何编写时间戳之间的差异脚本您的日期列似乎不是数字 JMP 日期/时间值。看起来它是一个字符列。因此,您需要做的第一件事是将其转换为 JMP 日期/时间列。完成后,检查值之间是否存在差异的方法是结合使用 Date Difference() 函数和 Lag() 函数。
If(Date Difference( lag(:DateTime),:DateTime,"Minute)>5,dataGood="Missing Data",dataGood="No Missing Data");