基於範圍的用於重新編碼腳本的空輸出你好,
我正在嘗試創建一個新列(PRR_Level),它將來自連續數字列(PRR_Score)的數據分為2類。 通過使用recode函數和按值映射生成的代碼可以通過為PRR_Score中的每個值創建一個映射來工作,但是我想要更簡潔一些,可以用於重複分析。
該腳本不會產生任何錯誤,但是新列中的所有值均為空。 有人知道我在做什麼錯嗎?
// PRR_Level
名稱默認為此處( 1個);
dt =當前數據表();
dt <<開始數據更新;
dt <<新專欄( “ PRR_Level” ,
對於每一行(
:PRR_Level =如果(
:PRR_Score> = 75 , “首選適合” ,
:PRR_Score < 75 , “潛在風險” ,
)
);
);
dt <<移動選定列(最後);
dt <<最終數據更新;
腳本編寫回复:基於範圍的用於重新編碼腳本的空輸出輸出值為字符串,因此必須將新列聲明為該列的字符建模類型。
另外,For Each Row()函數是一個開放代碼函數,並且需要賦值語句的完整結構。我提供了兩種創建所需列的方法
//PRR_Level
Names Default To Here( 1 );
dt = Current Data Table();
dt << New Column( "PRR_Level", character );
For Each Row(
If( :PRR_Score >= 75,
:PRR_Level = "Preferred Fit",
:PRR_Level = "Potential Risk"
)
);
// or
dt << New Column( "PRR_Level 2",
character,
Set each value(
If( :PRR_Score >= 75,
"Preferred Fit",
"Potential Risk"
)
)
);