以下は、Col Cumulative Sum() を比較とともに使用する 1 つのオプションです。
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(14),
Compress File When Saved(1),
New Column("Column 1",
Character,
"Nominal",
Set Values(
{"No", "No", "No", "No", "Yes", "No", "No", "No", "No", "No", "Yes",
"No", "No", "No"}
)
),
New Column("Column 2",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3])
)
);
dt << New Column("Series", Numeric, Continuous, Formula(
Col Cumulative Sum(:Column 1 == "Yes") + 1
));ありがとう!!
ここで、別の列があり、次のようにカウントを「リセット」したい場合は、もう少し助けが必要です。
| 列0 | 列 1 | シリーズ |
| 赤 | いいえ | 1 |
| 赤 | いいえ | 1 |
| 赤 | いいえ | 1 |
| 赤 | いいえ | 1 |
| 赤 | はい | 2 |
| 赤 | いいえ | 2 |
| 赤 | いいえ | 2 |
| 青 | いいえ | 1 |
| 青 | いいえ | 1 |
| 青 | いいえ | 1 |
| 青 | はい | 2 |
| 青 | いいえ | 2 |
| 青 | いいえ | 2 |
| 青 | いいえ | 2 |
| 緑 | いいえ | 1 |
| 緑 | いいえ | 1 |
| 緑 | いいえ | 1 |
| 緑 | いいえ | 1 |
| 緑 | いいえ | 1 |
| 緑 | はい | 2 |
| 緑 | いいえ | 2 |
| 緑 | いいえ | 2 |
これを試してみました:
dt << New Column("Series", Numeric, Continuous, Formula(If( :column 0 == Lag( :column 0, 1 ),
(Col Cumulative Sum(:column 1 == 1) + 1),
(Col Cumulative Sum(:column 1 == 1) + 0)
)));
Col 累積合計() をサポートしているため、:Column 0 を byvar として使用でき、:Column 0 から見つかった各値に対して個別に計算を実行します。
こんにちは。JSL を使用して、系列を埋め、別の列値によってトリガーされたときに 1 ずつ増加する列を作成する方法についてサポートが必要です。
以下の列 2 のように、列 1 に「はい」があるたびに、列 2 の値が 1 ずつ増加します。
十分にご理解いただければ幸いです。
| 列 1 |
列 2 |
| いいえ |
1 |
| いいえ |
1 |
| いいえ |
1 |
| いいえ |
1 |
| はい |
2 |
| いいえ |
2 |
| いいえ |
2 |
| いいえ |
2 |
| いいえ |
2 |
| いいえ |
2 |
| はい |
3 |
| いいえ |
3 |
| いいえ |
3 |
| いいえ |
3 |