時間差を計算し、値を合計します次の形式の時間列を持つテーブルがあります:m / d / yh:m:s
その行までの累積時間差を表示するCumTimeSecという新しい列を作成したいと思います。
例えば、
時間
| 時間 | CumTimeSec |
5/11/2022 5:30:03 PM | 0 |
5/11/2022 5:30:08 PM | 5 |
| 5/11/2022 5:30:20 PM | 17 |
| 5/11/2022 5:30:23 PM | 20 |
このコードを使用して各行の差を計算できると思いましたが、値を合計する方法がわかりません
dt << New Column( "CumTimeSec",
Numeric,
"Continuous",
formula( :Time - Lag( :Time) )
);
スクリプティングRe:時間差を計算して値を合計するこんにちはLavik17、
ラグはこのアプリケーションには便利ですが、数回使用する必要があります。Dif()は、現在の行と「ラグ」行の差をとることに注意してください。たとえば、上記では:Time --Lag(:Time)を計算します。これはDif(:Time)と同じです。
これは、JMPサンプルデータを使用して実行できる例です。この表には一連の年がリストされていますが、時間列でも同じように機能します。
dt = Open("$SAMPLE_DATA/Time Series/SeriesQ.jmp");
dt << New Column("CumTimeYear", Formula(
If( Row() > 1,
Lag( :CumTimeYear ) + Dif( :Year )
, // else first row
0
)
));