Seçenekleri ayarladım (warn = 2). Tetiklendiğinde uyarının farkında olmak ve yürütmeyi durdurmayı tercih ederim. Bununla birlikte, birkaç durumda bir uyarı bekleniyor ve program yürütmeye devam etmelidir. TryCatch() işlevinin kullanılması hatayı düzgün bir şekilde yakalar, ancak elde edilen veriler mevcut değildir.R - bazı senaryolarda uyarıda hatayı yok say, sonuçları al
İşte somut bir örnek: tryCatch içinde
x = c(1,2,3,4,5,6)
y = c(1,1,1,0,0,0)
result = glm(y~x , family = binomial(link = "logit"))
Paketleme glm(), sonuç doldurulur değil. Bu, glm'nin uyarısı geri dönme şansı olmadan bir hataya dönüştürüldüğünden anlamlıdır. Bu senaryoda en iyi uygulama var mı? Glm çağrısından önce seçenekleri (warn = 0) ayarlamak ve sonra aramadan sonra geri yüklemek mi? Yoksa daha iyi bir desen var mı?
Eminim yapmak istediklerim budur. Uyarılar için standart yoktur. Bazen bir uyarı önemsiz, diğer zamanlarda ise oldukça ciddi. Bu yüzden uyarıları varsayılan olarak hatalara dönüştürüyorum. Yine de, uyarıyı görmezden gelebileceğime kesin olarak emin olduğum bazı durumlarda uyarıları ihmal etme yeteneğine ihtiyacım var. Bu durumlarda sonucu istiyorum! ===========
tryCatch( { result = glm(y~x , family = binomial(link = "logit")) } , error = function(e) { print("test") })
Denediğiniz "tryCatch" bloğunu verebilir misiniz? –
@Joshua - orijinal yayının düzenlemesi olarak eklendi. TryCatch'ı hatalı mı kullanıyorum? – SFun28
Emin değilim; Başkalarının sana yardım etmesine yardımcı olabileceğini düşündüm. FWIW, bence "bastır", muhtemelen aradığın şey. –