如何使用jsl脚本将时间戳数据转换为每个批次的持续时间大家好,
我已经开始使用 JSL,目前处于初学者水平。
我的数据由不同过程变量的时间序列批处理数据组成。 每个批次都有不同的时间序列范围/处理时间。 数据分辨率为 1 小时。

首先,我想将批处理开始时间(实时)转换为从时间点零(0)开始的持续时间,然后累积到实时结束。 我想我设法使用我在网上找到的脚本来做到这一点。 但是,这仅适用于第一批。
对于第二批,实时转换为持续时间并不从时间点零开始。
问题:如何制作/修改脚本,使其考虑到每个批次 ID 和相应的处理时间?
提前致谢
脚本
names default to here (1);
dt = current data table ();
dt << New Column( "Duration",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
If( Row() == 1, 0, :TimeStamp - :TimeStamp[1] ) / 60
)
);
脚本回复:如何使用 jsl 脚本将时间戳数据转换为每个批次的持续时间非常感谢马克。 它工作得很好。 圣诞节快乐 :)
回复:如何使用 jsl 脚本将时间戳数据转换为每个批次的持续时间此备选方案使用内置函数 Col Minimum( x, group )。

回复:如何使用 jsl 脚本将时间戳数据转换为每个批次的持续时间这是一个简单的脚本,它创建一个新列,其中包含一个计算从每个批次开始的持续时间的公式

names default to here( 1 );
dt = Current Data Table();
dt << New Column( "Duration",
Format( ":day:hr:m:s", 21, 3 ),
formula(
If( Row() == 1 | :Batch != Lag( :Batch ),
start = :Timestamp
);
:Timestamp - start;
)
);