タイムスタンプの違いをスクリプト化する方法皆さんこんにちは、
ユーザーの欠落データをチェックするスクリプトに取り組んでいます。 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 分を超えるタイムスタンプを持つセルを選択するスクリプトを作成する方法を知っている人はいますか?
どうもありがとう、
ウィニー
Re: タイムスタンプの違いをスクリプト化する方法こんにちはジム、私は問題を理解しました。 どうもありがとうございました!
Re: タイムスタンプの違いをスクリプト化する方法あなたが提供した詳細を考えると、これはあなたにとって良い解決策かもしれないと思います
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"
)
)
);
Re: タイムスタンプの違いをスクリプト化する方法こんにちはジム、
お返事ありがとうございます。 私はあなたの提案に基づいて変更を加えました。 私のスクリプトは以下に示されています:
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 用に新しい列を作成する必要がありますか?
どうもありがとう!
Re: タイムスタンプの違いをスクリプト化する方法日付列が数値の JMP 日付/時刻値ではないようです。どうやら文字列のようです。したがって、最初に行う必要があるのは、これを JMP 日付/時刻列に変換することです。それが完了したら、値の違いを確認する方法は、Lag() 関数と組み合わせて Date Difference() 関数を使用することです。
If(Date Difference( lag(:DateTime),:DateTime,"Minute)>5,dataGood="Missing Data",dataGood="No Missing Data");