當另一列中出現相同的項目時,如何在一列中填充連續數字(從1開始)?假設我有兩列數據。 第一列是零件 ID,第二列是該零件的測量值。 每個零件都會被測量 N 次,以便零件 ID 列中的行的 ID 在表中出現 N 次,直到出現下一個零件 ID。 我想創建一個新列,其中包含給定零件的測量重複/運行次數。
因此,對於partID列中出現的相同partID,我想用從1開始的連續數字填充Runs列。
因此,如果 A 部分測量了 11 次,則運行列將獲取從 1 到 11 的行條目。 接下來 B 部分被測量 9 次,運行列包含行條目 1 到 9,依此類推。
我如何通過 JSL 自動執行此操作?
視窗回复:當另一列中出現相同的項目時,如何在一列中填充連續數字(從 1 開始)?只要partID按照您所說的進行分組,就可以了。
If(
Row() == 1, 1,
Lag( :partID ) == :partID, Lag( :Runs ) + 1,
1
)
回复:當另一列中出現相同的項目時,如何在一列中填充連續數字(從 1 開始)?@mmarchandTSI解決方案是一個很好的解決方案。但與往常一樣,在 JMP 中,有多種方法可以獲得解決方案。這是一個替代解決方案
Col Cumulative Sum( 1, :partID )
回复:當另一列中出現相同的項目時,如何在一列中填充連續數字(從 1 開始)?值為 1 的列累積和應適用於當前的 JMP 版本
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(10),
Compress File When Saved(1),
New Column("Column 1",
Character,
"Nominal",
Set Values({"A", "A", "A", "A", "B", "B", "C", "C", "C", "D"})
)
);
dt << New Column("Run", Numeric, Ordinal, Formula(
Col Cumulative Sum(1, :Column 1)
));