2017-05-08 118 views
0

我想創建比較是否預測數據的一個新的列表會爲了數據的每一行中等於實際來檢查我的預測正確的結果。對不起,如果我的代碼非常混亂,效率低下。我需要一些關於下面所述問題的指導。謝謝。如何申請ifelse語句數據的列表中的R

首先我創建一個列表預測實際

predict <-list(compare_result[,1])` 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 
1 1 0 1 0 0 1 1 1 0 0 1 1 1 0 0 1 0 1 0 1 1 1 0 1 0 0 

actual <-list(compare_result[,2]) 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 
0 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 0 1 1 0 0 0 

然後我嘗試使用ifelse聲明兩個列表,但一個錯誤就出來了:

> comapare2 <- ifelse(predict=actual,"true","false") 

Error in ifelse(predict = actual, "true", "false") : 
    unused argument (predict = actual) 
+1

我不知道很多關於R但_if_比較通常REQ的_ = = _運算符。即'predict = actual' - >'predict == actual' – patrick

回答

1

您可以直接比較兩個向量,例如:

matches <- compare_results[, 1] == compare_results[,2] 

,然後如果你需要的是一個清單(不知道爲什麼),只投的最終結果:

matches_list <- as.list(matches) 
+0

非常感謝。花一個小時解決它,爲什麼我沒有想到這一點。 – Wong