我在RStudio中創建了一個非常簡單的if ... else語句,並遇到以下問題。我將不勝感激,如果你可能需要一些時間來看看這個: -一個非常簡單的if ... else語句產生意想不到的結果
(A)代碼: -
testing <- function(var1) {
if(var1 == "heart attack") {
col_no <- 11
col_no
} else if(var1 == "heart failure") {
col_no <- 17
col_no
} else if(var1 == "pneumonia") {
col_no <- 23
col_no
} else {"error"}
}
(B)輸出: -
testing("heart attack")
# [1] 11
col_no
# Error: object 'col_no' not found
testing("heart failure")
# [1] 17
col_no
# Error: object 'col_no' not found
testing("pneumonia")
# [1] 23
col_no
# Error: object 'col_no' not found
當我鍵入「測試(」心力衰竭「)」,我期待col_no的值是17而不是錯誤。
同樣,當我輸入「測試(」肺炎「)」,我期待col_no的值是23而不是錯誤。
請幫忙!
對象'col_no '只對函數'testing()'是本地的。請閱讀R的範圍。您必須調用如下函數:'col_no < - testing(「heart attack」)' – jogo
放入'col_no << - 11'以將函數對象分配給用戶環境。 –
@AdamQuek不要這樣做,只是分配結果:'col_no < - testing(...)' – Cath