嗨,我想知道是否可以為類似於下面的分析編寫腳本? 在一個列(“月”)中,我有一年中的所有 12 個月(1 月到 12 月),每個月在同一列中都有多行。 在下一列(“條件”)中,有該月的條件,“A”或“B”。 在第三列(“結果”)中,我想編寫一個分析“條件”列的公式,如果值為“A”,則“結果”列的結果為“良好”,如果值為“B”,結果將是“Bad”。 但是,即使某個月份的一行結果為“B”,我也希望該月的所有行結果為“Bad”。 用文字解釋有點難,所以我在下面舉個例子。

有很多方法可以做到這一點,尤其是腳本。
下面的示例應該可以工作(將公式拆分為更小的部分並查看腳本指南以了解發生了什麼(尤其是 Loc() 函數)可能是個好主意):
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(20),
Compress File When Saved(1),
New Column("Month",
Character,
"Nominal",
Set Values(
{"Jan", "Jan", "Jan", "Jan", "Jan", "Feb", "Feb", "Feb", "Feb", "Feb",
"Mar", "Mar", "Mar", "Mar", "Mar", "Apr", "Apr", "Apr", "Apr", "Apr"}
)
),
New Column("Condition",
Character,
"Nominal",
Set Values(
{"A", "A", "A", "B", "A", "A", "A", "A", "A", "A", "A", "A", "A", "A",
"A", "B", "B", "A", "A", "A"}
)
)
);
dt << New Column("Result", Character, Nominal,
<< Formula(
If(Row() == 1,
monVals = :Month << Get As Matrix;
condVals = :Condition << Get As Matrix;
);
curMonthVals = Loc(monVals, :Month);
curCond = Loc(condVals[curMonthVals], "B");
If(N Items(curCond),
"Bad",
"Good"
);
)
);我還附上了包含公式的示例數據表。
感謝您的快速回复。 不幸的是,我給出的例子是為了傳達這個想法。 對於我將使用的實際數據集,類似於“Month”值的列將被隨機化,因此我將無法對這些值進行硬編碼。