Bert Gunter
2022-Jan-27 15:43 UTC
[R] Error in if (fraction <= 1) { : missing value where TRUE/FALSE needed
This will not help solve the issue, but perhaps it is worth pointing out that the idiom, prot <- ifelse(test$operator == 'T13', 1, 0) is perhaps more simply coded as prot <- test$operator == 'T13' This will give a logical, TRUE/FALSE, instead of 1/0, but I doubt that a numeric is needed anyway. However, as.numeric() would of course do such a conversion, in which case the original ifelse might as well be used. Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Wed, Jan 26, 2022 at 11:39 PM PIKAL Petr <petr.pikal at precheza.cz> wrote:> > Hi > > Actually you did not. Your original question was: > > > Error in if (fraction <= 1) { : missing value where TRUE/FALSE needed > > I used this: > > var <- ifelse(test$operator == 'T14', 1, 0) > > operator has several values like T1, T3, T7, T15, T31, T37 > > For some values like T3, T7 it works fine but for majority of values > > it gives error. > > When I use: is.na(ts$operator), it shows all false values so no NAs. > > Only now we could inspect your whole code and it was already pointed that the > error does not originate from ifelse. > > With the same data and ifelse code I did not get any error. > > test <- structure(list(DepthTree = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > <snip> > > > str(test) > 'data.frame': 146 obs. of 15 variables: > $ DepthTree : num 1 1 1 1 1 1 1 1 1 1 ... > <snip> > $ numCovered : num 0 0 0 0 0 0 0 0 0 0 ... > $ operator : Factor w/ 16 levels "T0","T1","T2",..: 4 4 7 8 8 8 11 4 10 7 > ... > $ methodReturn : Factor w/ 22 levels "I","V","Z","method",..: 2 2 2 2 2 2 2 4 > 4 2 ... > $ numTestsCover: num 16 15 15 16 15 15 15 4 4 16 ... > $ mutantAssert : num 55 55 55 55 55 55 55 13 13 55 ... > $ classAssert : num 3 3 3 3 3 3 3 3 3 3 ... > $ isKilled : Factor w/ 2 levels "yes","no": 2 2 2 2 2 2 2 2 2 2 ... > > > prot <- ifelse(test$operator == 'T13', 1, 0) > > the most probable source of the error is > > fc= fairness_check(explainer, > protected = prot, > privileged = privileged) > > so you should check explainer and privileged > > Cheers > Petr > > From: javed khan <javedbtk111 at gmail.com> > Sent: Wednesday, January 26, 2022 3:45 PM > To: PIKAL Petr <petr.pikal at precheza.cz> > Cc: R-help <r-help at r-project.org> > Subject: Re: [R] Error in if (fraction <= 1) { : missing value where > TRUE/FALSE needed > > Hi Pikal, why would I hide something? I provided just a code where error is. > > Full code is: > > index= sample(1:nrow(data), 0.7*nrow(data)) > train= data[index,] > test= data[-index,] > > > task = TaskClassif$new("data", backend = train, target = "isKilled") > > learner= lrn("classif.gbm", predict_type = "prob") > > model= learner$train(task ) > > explainer = explain_mlr3(model, > data = test[,-15], > y = as.numeric(test$isKilled)-1, > label="GBM") > > prot <- ifelse(test$operator == 'T13', 1, 0) > privileged <- '1' > > fc= fairness_check(explainer, > protected = prot, > privileged = privileged) > plot(fc) > > > And my data is the following: > > str(test) > 'data.frame': 146 obs. of 15 variables: > $ DepthTree : num 1 1 1 1 1 1 1 1 1 1 ... > $ NumSubclass : num 0 0 0 0 0 0 0 0 0 0 ... > $ McCabe : num 1 3 3 3 3 3 3 1 1 2 ... > $ LOC : num 3 10 10 10 10 10 10 4 4 5 ... > $ DepthNested : num 1 2 2 2 2 2 2 1 1 2 ... > $ CA : num 1 1 1 1 1 1 1 1 1 1 ... > $ CE : num 2 2 2 2 2 2 2 2 2 2 ... > $ Instability : num 0.667 0.667 0.667 0.667 0.667 0.667 0.667 0.667 0.667 > 0.667 ... > $ numCovered : num 0 0 0 0 0 0 0 0 0 0 ... > $ operator : Factor w/ 16 levels "T0","T1","T2",..: 4 4 7 8 8 8 11 4 10 7 > ... > $ methodReturn : Factor w/ 22 levels "I","V","Z","method",..: 2 2 2 2 2 2 2 4 > 4 2 ... > $ numTestsCover: num 16 15 15 16 15 15 15 4 4 16 ... > $ mutantAssert : num 55 55 55 55 55 55 55 13 13 55 ... > $ classAssert : num 3 3 3 3 3 3 3 3 3 3 ... > $ isKilled : Factor w/ 2 levels "yes","no": 2 2 2 2 2 2 2 2 2 2 ... > > dput(test) > structure(list(DepthTree = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 2, 2, 1, 2, 1, 1, 1), NumSubclass = c(0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2), McCabe = c(1, 3, 3, > 3, 3, 3, 3, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 2, > 2, 2, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5, 2, 2, 2, > 2, 5, 5, 5, 5, 5, 5, 1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 2, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 2, 2, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 2, 2, > 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1), LOC = c(3, > 10, 10, 10, 10, 10, 10, 4, 4, 5, 22, 22, 22, 22, 22, 22, 22, > 22, 3, 3, 3, 3, 3, 8, 8, 8, 4, 23, 23, 23, 23, 23, 23, 23, 23, > 23, 23, 16, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 8, 16, 16, 16, > 16, 16, 16, 20, 20, 20, 20, 20, 20, 20, 20, 7, 7, 7, 7, 18, 18, > 18, 18, 18, 18, 3, 15, 15, 15, 15, 15, 15, 15, 15, 15, 6, 15, > 15, 15, 15, 15, 15, 15, 15, 15, 9, 9, 9, 9, 9, 9, 4, 4, 3, 3, > 3, 3, 3, 4, 4, 6, 6, 5, 5, 5, 8, 8, 8, 3, 3, 3, 3, 3, 3, 7, 3, > 3, 3, 3, 15, 15, 15, 15, 15, 15, 15, 15, 3, 3, 3, 3, 4, 4, 8, > 4, 4, 4, 3), DepthNested = c(1, 2, 2, 2, 2, 2, 2, 1, 1, 2, 4, > 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 2, 2, 2, 1, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, > 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, > 1, 1, 1, 1, 2, 1, 1, 1, 1), CA = c(1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1), CE = c(2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 2, 2, 2, 2, 2, 2, 0, 2, 0, 0, 2), Instability = c(0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0.667, 0, 0, > 0.667), numCovered = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 150, 54, 54, 123, 54, 54, 123, 54, 189, 189, 189, 138, 33, 18, > 27, 27, 18, 27, 15, 54, 54, 150, 150, 54, 150, 150, 54, 150, > 66, 60, 12, 60, 15, 45, 72, 12, 12, 45, 255, 255, 255, 255, 129, > 129, 0, 0, 6, 6, 6, 6, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 15, 21, 12, 12, 12, 12, 12, 12, 12, 12, > 48, 1557, 9, 12, 0, 0, 141, 0, 21, 21, 21), operator = structure(c(4L, > 4L, 7L, 8L, 8L, 8L, 11L, 4L, 10L, 7L, 4L, 7L, 8L, 8L, 8L, 9L, > 9L, 11L, 7L, 8L, 2L, 8L, 8L, 7L, 8L, 10L, 11L, 1L, 2L, 2L, 4L, > 8L, 8L, 8L, 8L, 10L, 12L, 4L, 6L, 6L, 8L, 8L, 8L, 7L, 7L, 8L, > 8L, 9L, 9L, 1L, 4L, 6L, 8L, 8L, 8L, 1L, 1L, 7L, 7L, 7L, 8L, 8L, > 13L, 7L, 8L, 9L, 9L, 1L, 1L, 2L, 7L, 8L, 10L, 10L, 4L, 7L, 7L, > 7L, 8L, 8L, 8L, 9L, 9L, 10L, 1L, 8L, 8L, 8L, 8L, 10L, 11L, 11L, > 11L, 6L, 7L, 8L, 9L, 9L, 10L, 6L, 10L, 1L, 4L, 7L, 10L, 6L, 7L, > 13L, 7L, 13L, 7L, 8L, 9L, 4L, 6L, 9L, 8L, 10L, 8L, 10L, 8L, 10L, > 9L, 8L, 10L, 13L, 10L, 2L, 7L, 7L, 8L, 8L, 9L, 11L, 11L, 10L, > 10L, 13L, 13L, 8L, 8L, 9L, 4L, 6L, 10L, 10L), .Label = c("T0", > "T1", "T2", "T3", "T4", "T5", "T6", "T7", "T8", "T9", "T10", > "T11", "T12", "T13", "T14", "T15"), class = "factor"), methodReturn > structure(c(2L, > 2L, 2L, 2L, 2L, 2L, 2L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, > 4L, 4L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 4L, 4L, 4L, 4L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, > 1L, 1L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, > 3L, 3L, 1L, 1L, 3L, 3L, 3L, 3L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 2L, 4L, 4L, 4L, > 4L, 4L, 4L, 4L, 4L, 4L, 3L, 3L, 2L, 2L, 4L, 4L, 1L, 3L, 1L, 1L, > 4L), .Label = c("I", "V", "Z", "method", "D", "[D", "[[D", "J", > "[I", "C", "[J", "[C", "[S", "F", "[F", "[B", "S", "B", "[Z", > "[[S", "[[B", "[[Z"), class = "factor"), numTestsCover = c(16, > 15, 15, 16, 15, 15, 15, 4, 4, 16, 16, 16, 15, 15, 15, 16, 16, > 15, 3, 3, 2, 2, 2, 16, 11, 16, 4, 16, 16, 3, 16, 16, 4, 16, 16, > 16, 16, 2, 3, 2, 1, 4, 1, 16, 15, 16, 15, 16, 16, 2, 2, 2, 3, > 2, 2, 4, 5, 5, 4, 5, 5, 4, 5, 4, 4, 4, 4, 4, 3, 4, 4, 3, 4, 4, > 5, 5, 4, 4, 5, 4, 4, 5, 4, 4, 4, 3, 4, 4, 4, 4, 3, 3, 4, 4, 4, > 4, 4, 6, 6, 0, 0, 2, 2, 2, 2, 7, 17, 17, 15, 15, 15, 15, 15, > 16, 16, 16, 16, 15, 16, 16, 15, 17, 17, 16, 16, 5, 4, 4, 4, 4, > 4, 4, 4, 4, 4, 16, 16, 3, 4, 0, 0, 5, 0, 4, 4, 1), mutantAssert = c(55, > 55, 55, 55, 55, 55, 55, 13, 13, 55, 55, 55, 55, 55, 55, 55, 55, > 55, 9, 9, 9, 9, 9, 55, 41, 55, 13, 55, 55, 5, 55, 55, 13, 55, > 55, 55, 55, 8, 13, 8, 4, 13, 4, 55, 55, 55, 55, 55, 55, 9, 9, > 9, 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 6, 9, 9, 6, > 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 6, 9, 9, 9, 9, 6, 6, 9, > 9, 9, 9, 9, 14, 14, 0, 0, 2, 2, 2, 2, 15, 58, 58, 55, 55, 55, > 55, 55, 58, 58, 58, 55, 55, 55, 55, 55, 58, 58, 58, 58, 9, 9, > 6, 6, 6, 6, 6, 6, 6, 6, 55, 55, 5, 13, 0, 0, 11, 0, 9, 9, 8), > classAssert = c(3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, > 10, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 1, 1, 3, 0, > 3, 3, 0), isKilled = structure(c(2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, > 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, > 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, > 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, > 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, > 1L, 2L, 1L, 1L, 1L), .Label = c("yes", "no"), class = "factor")), > row.names = c(3L, > 9L, 12L, 13L, 14L, 15L, 19L, 21L, 22L, 24L, 28L, 29L, 39L, 44L, > 46L, 51L, 52L, 57L, 62L, 63L, 68L, 71L, 73L, 75L, 77L, 80L, 83L, > 84L, 85L, 86L, 90L, 95L, 100L, 102L, 103L, 108L, 112L, 120L, > 122L, 123L, 142L, 143L, 146L, 158L, 159L, 160L, 163L, 167L, 168L, > 170L, 174L, 176L, 183L, 186L, 192L, 196L, 199L, 203L, 205L, 206L, > 208L, 214L, 221L, 226L, 229L, 233L, 234L, 235L, 236L, 237L, 238L, > 249L, 252L, 255L, 260L, 267L, 270L, 271L, 273L, 275L, 276L, 277L, > 278L, 286L, 288L, 293L, 295L, 297L, 298L, 300L, 301L, 302L, 306L, > 312L, 313L, 316L, 317L, 331L, 333L, 338L, 341L, 342L, 344L, 346L, > 348L, 359L, 370L, 375L, 378L, 381L, 382L, 383L, 386L, 389L, 390L, > 394L, 397L, 400L, 402L, 403L, 404L, 408L, 415L, 418L, 419L, 423L, > 425L, 426L, 429L, 431L, 432L, 433L, 444L, 446L, 447L, 448L, 449L, > 451L, 452L, 457L, 458L, 470L, 474L, 476L, 479L, 484L), class = "data.frame") > > > > > On Wed, Jan 26, 2022 at 3:29 PM PIKAL Petr <mailto:petr.pikal at precheza.cz> > wrote: > Hi > > It seems that you are hiding what you really do. > > This > > options(error = NULL) > works fine without any error. So please If you want some reasonable answer > post question with data and code which is causing the error. > > My wild guess is that you have some objects in your environment and you do > not know that they are used in you commands. Try to start fresh R session > and try to inspect your environment with > > ls() > > Cheers > Petr > > > -----Original Message----- > > From: R-help <mailto:r-help-bounces at r-project.org> On Behalf Of javed khan > > Sent: Wednesday, January 26, 2022 3:05 PM > > To: Ivan Krylov <mailto:krylov.r00t at gmail.com> > > Cc: R-help <mailto:r-help at r-project.org> > > Subject: Re: [R] Error in if (fraction <= 1) { : missing value where > TRUE/FALSE > > needed > > > > Ivan, thanks > > > > When I use options(error = NULL) > > > > it says: Error during wrapup: missing value where TRUE/FALSE needed > > Error: no more error handlers available (recursive errors?); invoking > 'abort' > > restart > > > > With traceback(), I get > > > > 4: readable_number(max_value - min_value, FALSE) > > 3: get_nice_ticks(lower_bound, upper_bound) > > > > On Wed, Jan 26, 2022 at 2:53 PM Ivan Krylov <mailto:krylov.r00t at gmail.com> > > wrote: > > > > > On Wed, 26 Jan 2022 14:47:16 +0100 > > > javed khan <mailto:javedbtk111 at gmail.com> wrote: > > > > > > > Error in if (fraction <= 1) { : missing value where TRUE/FALSE > > > > needed > > > > > > > var <- ifelse(test$operator == 'T14', 1, 0) > > > > > > The error must be in a place different from your test$operator > > > comparison. Have you tried traceback() to get the call stack leading > > > to the error? Or options(error = recover) to land in a debugger > > > session the moment an uncaught error happens? (Use options(error > > > NULL) to go back to the default behaviour.) > > > > > > Unrelated: var <- test$operator == 'T14' will also give you an > > > equivalent logical vector with a bit less work. > > > > > > -- > > > Best regards, > > > Ivan > > > > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > mailto:R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > > https://stat.ethz.ch/mailman/listinfo/r-help > > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.
Ebert,Timothy Aaron
2022-Jan-27 16:12 UTC
[R] Error in if (fraction <= 1) { : missing value where TRUE/FALSE needed
One could use the microbenchmark package to compare which approach is faster, assuming the dataset is large enough that the outcome will make a measurable difference. -----Original Message----- From: R-help <r-help-bounces at r-project.org> On Behalf Of Bert Gunter Sent: Thursday, January 27, 2022 10:44 AM To: PIKAL Petr <petr.pikal at precheza.cz> Cc: R-help <r-help at r-project.org> Subject: Re: [R] Error in if (fraction <= 1) { : missing value where TRUE/FALSE needed [External Email] This will not help solve the issue, but perhaps it is worth pointing out that the idiom, prot <- ifelse(test$operator == 'T13', 1, 0) is perhaps more simply coded as prot <- test$operator == 'T13' This will give a logical, TRUE/FALSE, instead of 1/0, but I doubt that a numeric is needed anyway. However, as.numeric() would of course do such a conversion, in which case the original ifelse might as well be used. Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Wed, Jan 26, 2022 at 11:39 PM PIKAL Petr <petr.pikal at precheza.cz> wrote:> > Hi > > Actually you did not. Your original question was: > > > Error in if (fraction <= 1) { : missing value where TRUE/FALSE > > needed I used this: > > var <- ifelse(test$operator == 'T14', 1, 0) operator has several > > values like T1, T3, T7, T15, T31, T37 For some values like T3, T7 it > > works fine but for majority of values it gives error. > > When I use: is.na(ts$operator), it shows all false values so no NAs. > > Only now we could inspect your whole code and it was already pointed > that the error does not originate from ifelse. > > With the same data and ifelse code I did not get any error. > > test <- structure(list(DepthTree = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, <snip> > > > str(test) > 'data.frame': 146 obs. of 15 variables: > $ DepthTree : num 1 1 1 1 1 1 1 1 1 1 ... > <snip> > $ numCovered : num 0 0 0 0 0 0 0 0 0 0 ... > $ operator : Factor w/ 16 levels "T0","T1","T2",..: 4 4 7 8 8 8 11 4 10 7 > ... > $ methodReturn : Factor w/ 22 levels "I","V","Z","method",..: 2 2 2 2 > 2 2 2 4 > 4 2 ... > $ numTestsCover: num 16 15 15 16 15 15 15 4 4 16 ... > $ mutantAssert : num 55 55 55 55 55 55 55 13 13 55 ... > $ classAssert : num 3 3 3 3 3 3 3 3 3 3 ... > $ isKilled : Factor w/ 2 levels "yes","no": 2 2 2 2 2 2 2 2 2 2 ... > > > prot <- ifelse(test$operator == 'T13', 1, 0) > > the most probable source of the error is > > fc= fairness_check(explainer, > protected = prot, > privileged = privileged) > > so you should check explainer and privileged > > Cheers > Petr > > From: javed khan <javedbtk111 at gmail.com> > Sent: Wednesday, January 26, 2022 3:45 PM > To: PIKAL Petr <petr.pikal at precheza.cz> > Cc: R-help <r-help at r-project.org> > Subject: Re: [R] Error in if (fraction <= 1) { : missing value where > TRUE/FALSE needed > > Hi Pikal, why would I hide something? I provided just a code where error is. > > Full code is: > > index= sample(1:nrow(data), 0.7*nrow(data)) train= data[index,] test= > data[-index,] > > > task = TaskClassif$new("data", backend = train, target = "isKilled") > > learner= lrn("classif.gbm", predict_type = "prob") > > model= learner$train(task ) > > explainer = explain_mlr3(model, > data = test[,-15], > y = as.numeric(test$isKilled)-1, > label="GBM") > > prot <- ifelse(test$operator == 'T13', 1, 0) privileged <- '1' > > fc= fairness_check(explainer, > protected = prot, > privileged = privileged) > plot(fc) > > > And my data is the following: > > str(test) > 'data.frame': 146 obs. of 15 variables: > $ DepthTree : num 1 1 1 1 1 1 1 1 1 1 ... > $ NumSubclass : num 0 0 0 0 0 0 0 0 0 0 ... > $ McCabe : num 1 3 3 3 3 3 3 1 1 2 ... > $ LOC : num 3 10 10 10 10 10 10 4 4 5 ... > $ DepthNested : num 1 2 2 2 2 2 2 1 1 2 ... > $ CA : num 1 1 1 1 1 1 1 1 1 1 ... > $ CE : num 2 2 2 2 2 2 2 2 2 2 ... > $ Instability : num 0.667 0.667 0.667 0.667 0.667 0.667 0.667 0.667 > 0.667 > 0.667 ... > $ numCovered : num 0 0 0 0 0 0 0 0 0 0 ... > $ operator : Factor w/ 16 levels "T0","T1","T2",..: 4 4 7 8 8 8 11 4 10 7 > ... > $ methodReturn : Factor w/ 22 levels "I","V","Z","method",..: 2 2 2 2 > 2 2 2 4 > 4 2 ... > $ numTestsCover: num 16 15 15 16 15 15 15 4 4 16 ... > $ mutantAssert : num 55 55 55 55 55 55 55 13 13 55 ... > $ classAssert : num 3 3 3 3 3 3 3 3 3 3 ... > $ isKilled : Factor w/ 2 levels "yes","no": 2 2 2 2 2 2 2 2 2 2 ... > > dput(test) > structure(list(DepthTree = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 1, 1, 1), NumSubclass = c(0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 2), McCabe = c(1, 3, 3, 3, 3, 3, 3, 1, 1, 2, 3, 3, > 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 2, 2, 2, 1, 4, 4, 4, 4, 4, 4, 4, 4, > 4, 4, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, > 5, 5, 5, 5, 5, 2, 2, 2, 2, 5, 5, 5, 5, 5, 5, 1, 5, 5, 5, 5, 5, 5, 5, > 5, 5, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, > 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1), LOC = c(3, > 10, 10, 10, 10, 10, 10, 4, 4, 5, 22, 22, 22, 22, 22, 22, 22, 22, 3, 3, > 3, 3, 3, 8, 8, 8, 4, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 16, 16, > 16, 16, 16, 16, 8, 8, 8, 8, 8, 8, 16, 16, 16, 16, 16, 16, 20, 20, 20, > 20, 20, 20, 20, 20, 7, 7, 7, 7, 18, 18, 18, 18, 18, 18, 3, 15, 15, 15, > 15, 15, 15, 15, 15, 15, 6, 15, 15, 15, 15, 15, 15, 15, 15, 15, 9, 9, > 9, 9, 9, 9, 4, 4, 3, 3, 3, 3, 3, 4, 4, 6, 6, 5, 5, 5, 8, 8, 8, 3, 3, > 3, 3, 3, 3, 7, 3, 3, 3, 3, 15, 15, 15, 15, 15, 15, 15, 15, 3, 3, 3, 3, > 4, 4, 8, 4, 4, 4, 3), DepthNested = c(1, 2, 2, 2, 2, 2, 2, 1, 1, 2, 4, > 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 2, 2, 2, 1, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, > 1, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1), CA = c(1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, > 1, 1, 2, 1, 2, 2, 1), CE = c(2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 2, 0, 0, 2), Instability = > c(0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0.667, 0, 0, > 0.667), numCovered = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150, 54, 54, 123, 54, > 54, 123, 54, 189, 189, 189, 138, 33, 18, 27, 27, 18, 27, 15, 54, 54, > 150, 150, 54, 150, 150, 54, 150, 66, 60, 12, 60, 15, 45, 72, 12, 12, > 45, 255, 255, 255, 255, 129, 129, 0, 0, 6, 6, 6, 6, 303, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 21, 12, 12, 12, 12, > 12, 12, 12, 12, 48, 1557, 9, 12, 0, 0, 141, 0, 21, 21, 21), operator = > structure(c(4L, 4L, 7L, 8L, 8L, 8L, 11L, 4L, 10L, 7L, 4L, 7L, 8L, 8L, > 8L, 9L, 9L, 11L, 7L, 8L, 2L, 8L, 8L, 7L, 8L, 10L, 11L, 1L, 2L, 2L, 4L, > 8L, 8L, 8L, 8L, 10L, 12L, 4L, 6L, 6L, 8L, 8L, 8L, 7L, 7L, 8L, 8L, 9L, > 9L, 1L, 4L, 6L, 8L, 8L, 8L, 1L, 1L, 7L, 7L, 7L, 8L, 8L, 13L, 7L, 8L, > 9L, 9L, 1L, 1L, 2L, 7L, 8L, 10L, 10L, 4L, 7L, 7L, 7L, 8L, 8L, 8L, 9L, > 9L, 10L, 1L, 8L, 8L, 8L, 8L, 10L, 11L, 11L, 11L, 6L, 7L, 8L, 9L, 9L, > 10L, 6L, 10L, 1L, 4L, 7L, 10L, 6L, 7L, 13L, 7L, 13L, 7L, 8L, 9L, 4L, > 6L, 9L, 8L, 10L, 8L, 10L, 8L, 10L, 9L, 8L, 10L, 13L, 10L, 2L, 7L, 7L, > 8L, 8L, 9L, 11L, 11L, 10L, 10L, 13L, 13L, 8L, 8L, 9L, 4L, 6L, 10L, > 10L), .Label = c("T0", "T1", "T2", "T3", "T4", "T5", "T6", "T7", "T8", > "T9", "T10", "T11", "T12", "T13", "T14", "T15"), class = "factor"), > methodReturn = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 4L, 4L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, > 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 4L, 4L, 4L, 4L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, > 1L, 1L, 1L, 1L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, > 1L, 3L, 3L, 1L, 1L, 3L, 3L, 3L, 3L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 2L, 4L, 4L, 4L, 4L, > 4L, 4L, 4L, 4L, 4L, 3L, 3L, 2L, 2L, 4L, 4L, 1L, 3L, 1L, 1L, 4L), > .Label = c("I", "V", "Z", "method", "D", "[D", "[[D", "J", "[I", "C", > "[J", "[C", "[S", "F", "[F", "[B", "S", "B", "[Z", "[[S", "[[B", > "[[Z"), class = "factor"), numTestsCover = c(16, 15, 15, 16, 15, 15, > 15, 4, 4, 16, 16, 16, 15, 15, 15, 16, 16, 15, 3, 3, 2, 2, 2, 16, 11, > 16, 4, 16, 16, 3, 16, 16, 4, 16, 16, 16, 16, 2, 3, 2, 1, 4, 1, 16, 15, > 16, 15, 16, 16, 2, 2, 2, 3, 2, 2, 4, 5, 5, 4, 5, 5, 4, 5, 4, 4, 4, 4, > 4, 3, 4, 4, 3, 4, 4, 5, 5, 4, 4, 5, 4, 4, 5, 4, 4, 4, 3, 4, 4, 4, 4, > 3, 3, 4, 4, 4, 4, 4, 6, 6, 0, 0, 2, 2, 2, 2, 7, 17, 17, 15, 15, 15, > 15, 15, 16, 16, 16, 16, 15, 16, 16, 15, 17, 17, 16, 16, 5, 4, 4, 4, 4, > 4, 4, 4, 4, 4, 16, 16, 3, 4, 0, 0, 5, 0, 4, 4, 1), mutantAssert = > c(55, 55, 55, 55, 55, 55, 55, 13, 13, 55, 55, 55, 55, 55, 55, 55, 55, > 55, 9, 9, 9, 9, 9, 55, 41, 55, 13, 55, 55, 5, 55, 55, 13, 55, 55, 55, > 55, 8, 13, 8, 4, 13, 4, 55, 55, 55, 55, 55, 55, 9, 9, 9, 9, 9, 8, 9, > 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 6, 9, 9, 6, 9, 9, 9, 9, 9, 9, 9, > 9, 9, 9, 9, 9, 9, 6, 9, 9, 9, 9, 6, 6, 9, 9, 9, 9, 9, 14, 14, 0, 0, 2, > 2, 2, 2, 15, 58, 58, 55, 55, 55, 55, 55, 58, 58, 58, 55, 55, 55, 55, > 55, 58, 58, 58, 58, 9, 9, 6, 6, 6, 6, 6, 6, 6, 6, 55, 55, 5, 13, 0, 0, > 11, 0, 9, 9, 8), > classAssert = c(3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > 0, 0, 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, > 10, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 1, 1, 3, 0, > 3, 3, 0), isKilled = structure(c(2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, > 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, > 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, > 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, > 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, > 1L, 2L, 1L, 1L, 1L), .Label = c("yes", "no"), class = "factor")), > row.names = c(3L, 9L, 12L, 13L, 14L, 15L, 19L, 21L, 22L, 24L, 28L, > 29L, 39L, 44L, 46L, 51L, 52L, 57L, 62L, 63L, 68L, 71L, 73L, 75L, 77L, > 80L, 83L, 84L, 85L, 86L, 90L, 95L, 100L, 102L, 103L, 108L, 112L, 120L, > 122L, 123L, 142L, 143L, 146L, 158L, 159L, 160L, 163L, 167L, 168L, > 170L, 174L, 176L, 183L, 186L, 192L, 196L, 199L, 203L, 205L, 206L, > 208L, 214L, 221L, 226L, 229L, 233L, 234L, 235L, 236L, 237L, 238L, > 249L, 252L, 255L, 260L, 267L, 270L, 271L, 273L, 275L, 276L, 277L, > 278L, 286L, 288L, 293L, 295L, 297L, 298L, 300L, 301L, 302L, 306L, > 312L, 313L, 316L, 317L, 331L, 333L, 338L, 341L, 342L, 344L, 346L, > 348L, 359L, 370L, 375L, 378L, 381L, 382L, 383L, 386L, 389L, 390L, > 394L, 397L, 400L, 402L, 403L, 404L, 408L, 415L, 418L, 419L, 423L, > 425L, 426L, 429L, 431L, 432L, 433L, 444L, 446L, 447L, 448L, 449L, > 451L, 452L, 457L, 458L, 470L, 474L, 476L, 479L, 484L), class = > "data.frame") > > > > > On Wed, Jan 26, 2022 at 3:29 PM PIKAL Petr > <mailto:petr.pikal at precheza.cz> > wrote: > Hi > > It seems that you are hiding what you really do. > > This > > options(error = NULL) > works fine without any error. So please If you want some reasonable > answer post question with data and code which is causing the error. > > My wild guess is that you have some objects in your environment and > you do not know that they are used in you commands. Try to start fresh > R session and try to inspect your environment with > > ls() > > Cheers > Petr > > > -----Original Message----- > > From: R-help <mailto:r-help-bounces at r-project.org> On Behalf Of > > javed khan > > Sent: Wednesday, January 26, 2022 3:05 PM > > To: Ivan Krylov <mailto:krylov.r00t at gmail.com> > > Cc: R-help <mailto:r-help at r-project.org> > > Subject: Re: [R] Error in if (fraction <= 1) { : missing value where > TRUE/FALSE > > needed > > > > Ivan, thanks > > > > When I use options(error = NULL) > > > > it says: Error during wrapup: missing value where TRUE/FALSE needed > > Error: no more error handlers available (recursive errors?); > > invoking > 'abort' > > restart > > > > With traceback(), I get > > > > 4: readable_number(max_value - min_value, FALSE) > > 3: get_nice_ticks(lower_bound, upper_bound) > > > > On Wed, Jan 26, 2022 at 2:53 PM Ivan Krylov > > <mailto:krylov.r00t at gmail.com> > > wrote: > > > > > On Wed, 26 Jan 2022 14:47:16 +0100 javed khan > > > <mailto:javedbtk111 at gmail.com> wrote: > > > > > > > Error in if (fraction <= 1) { : missing value where TRUE/FALSE > > > > needed > > > > > > > var <- ifelse(test$operator == 'T14', 1, 0) > > > > > > The error must be in a place different from your test$operator > > > comparison. Have you tried traceback() to get the call stack > > > leading to the error? Or options(error = recover) to land in a > > > debugger session the moment an uncaught error happens? (Use > > > options(error > > > NULL) to go back to the default behaviour.) > > > > > > Unrelated: var <- test$operator == 'T14' will also give you an > > > equivalent logical vector with a bit less work. > > > > > > -- > > > Best regards, > > > Ivan > > > > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > mailto:R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, > > see > > https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_ma > > ilman_listinfo_r-2Dhelp&d=DwICAg&c=sJ6xIWYx-zLMB3EPkvcnVg&r=9PEhQh2k > > VeAsRzsn7AkP-g&m=eLthULmcsbsauwFtFwUELWbEcCm6j9dDsFTJTMNM9azTjEAhJ1- > > qp1QpqM4aMJUU&s=nKOUnbWqTVHBJ8_18UPI_0txX86s35CP6VAqBc-Q6_k&e> > PLEASE do read the posting guide > https://urldefense.proofpoint.com/v2/url?u=http-3A__www.R-2Dproject.or > g_posting-2Dguide.html&d=DwICAg&c=sJ6xIWYx-zLMB3EPkvcnVg&r=9PEhQh2kVeA > sRzsn7AkP-g&m=eLthULmcsbsauwFtFwUELWbEcCm6j9dDsFTJTMNM9azTjEAhJ1-qp1Qp > qM4aMJUU&s=eZti_glRZlkKsUposffe3dMBirNV2J-goX3ARZowxLs&e> > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mail > man_listinfo_r-2Dhelp&d=DwICAg&c=sJ6xIWYx-zLMB3EPkvcnVg&r=9PEhQh2kVeAs > Rzsn7AkP-g&m=eLthULmcsbsauwFtFwUELWbEcCm6j9dDsFTJTMNM9azTjEAhJ1-qp1Qpq > M4aMJUU&s=nKOUnbWqTVHBJ8_18UPI_0txX86s35CP6VAqBc-Q6_k&e> PLEASE do read the posting guide > https://urldefense.proofpoint.com/v2/url?u=http-3A__www.R-2Dproject.or > g_posting-2Dguide.html&d=DwICAg&c=sJ6xIWYx-zLMB3EPkvcnVg&r=9PEhQh2kVeA > sRzsn7AkP-g&m=eLthULmcsbsauwFtFwUELWbEcCm6j9dDsFTJTMNM9azTjEAhJ1-qp1Qp > qM4aMJUU&s=eZti_glRZlkKsUposffe3dMBirNV2J-goX3ARZowxLs&e> and provide commented, minimal, self-contained, reproducible code.______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_listinfo_r-2Dhelp&d=DwICAg&c=sJ6xIWYx-zLMB3EPkvcnVg&r=9PEhQh2kVeAsRzsn7AkP-g&m=eLthULmcsbsauwFtFwUELWbEcCm6j9dDsFTJTMNM9azTjEAhJ1-qp1QpqM4aMJUU&s=nKOUnbWqTVHBJ8_18UPI_0txX86s35CP6VAqBc-Q6_k&ePLEASE do read the posting guide https://urldefense.proofpoint.com/v2/url?u=http-3A__www.R-2Dproject.org_posting-2Dguide.html&d=DwICAg&c=sJ6xIWYx-zLMB3EPkvcnVg&r=9PEhQh2kVeAsRzsn7AkP-g&m=eLthULmcsbsauwFtFwUELWbEcCm6j9dDsFTJTMNM9azTjEAhJ1-qp1QpqM4aMJUU&s=eZti_glRZlkKsUposffe3dMBirNV2J-goX3ARZowxLs&eand provide commented, minimal, self-contained, reproducible code.
javed khan
2022-Jan-27 18:15 UTC
[R] Error in if (fraction <= 1) { : missing value where TRUE/FALSE needed
Thank you Bert Gunter Do you mean I should do something like this: prot <- (as.numeric(ifelse(test$operator == 'T13', 1, 0)) On Thu, Jan 27, 2022 at 4:44 PM Bert Gunter <bgunter.4567 at gmail.com> wrote:> This will not help solve the issue, but perhaps it is worth pointing > out that the idiom, > prot <- ifelse(test$operator == 'T13', 1, 0) > is perhaps more simply coded as > prot <- test$operator == 'T13' > > This will give a logical, TRUE/FALSE, instead of 1/0, but I doubt that > a numeric is needed anyway. However, as.numeric() would of course do > such a conversion, in which case the original ifelse might as well be > used. > > Bert Gunter > > "The trouble with having an open mind is that people keep coming along > and sticking things into it." > -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) > > On Wed, Jan 26, 2022 at 11:39 PM PIKAL Petr <petr.pikal at precheza.cz> > wrote: > > > > Hi > > > > Actually you did not. Your original question was: > > > > > Error in if (fraction <= 1) { : missing value where TRUE/FALSE needed > > > I used this: > > > var <- ifelse(test$operator == 'T14', 1, 0) > > > operator has several values like T1, T3, T7, T15, T31, T37 > > > For some values like T3, T7 it works fine but for majority of values > > > it gives error. > > > When I use: is.na(ts$operator), it shows all false values so no NAs. > > > > Only now we could inspect your whole code and it was already pointed > that the > > error does not originate from ifelse. > > > > With the same data and ifelse code I did not get any error. > > > > test <- structure(list(DepthTree = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > <snip> > > > > > str(test) > > 'data.frame': 146 obs. of 15 variables: > > $ DepthTree : num 1 1 1 1 1 1 1 1 1 1 ... > > <snip> > > $ numCovered : num 0 0 0 0 0 0 0 0 0 0 ... > > $ operator : Factor w/ 16 levels "T0","T1","T2",..: 4 4 7 8 8 8 11 > 4 10 7 > > ... > > $ methodReturn : Factor w/ 22 levels "I","V","Z","method",..: 2 2 2 2 2 > 2 2 4 > > 4 2 ... > > $ numTestsCover: num 16 15 15 16 15 15 15 4 4 16 ... > > $ mutantAssert : num 55 55 55 55 55 55 55 13 13 55 ... > > $ classAssert : num 3 3 3 3 3 3 3 3 3 3 ... > > $ isKilled : Factor w/ 2 levels "yes","no": 2 2 2 2 2 2 2 2 2 2 ... > > > > > prot <- ifelse(test$operator == 'T13', 1, 0) > > > > the most probable source of the error is > > > > fc= fairness_check(explainer, > > protected = prot, > > privileged = privileged) > > > > so you should check explainer and privileged > > > > Cheers > > Petr > > > > From: javed khan <javedbtk111 at gmail.com> > > Sent: Wednesday, January 26, 2022 3:45 PM > > To: PIKAL Petr <petr.pikal at precheza.cz> > > Cc: R-help <r-help at r-project.org> > > Subject: Re: [R] Error in if (fraction <= 1) { : missing value where > > TRUE/FALSE needed > > > > Hi Pikal, why would I hide something? I provided just a code where error > is. > > > > Full code is: > > > > index= sample(1:nrow(data), 0.7*nrow(data)) > > train= data[index,] > > test= data[-index,] > > > > > > task = TaskClassif$new("data", backend = train, target = "isKilled") > > > > learner= lrn("classif.gbm", predict_type = "prob") > > > > model= learner$train(task ) > > > > explainer = explain_mlr3(model, > > data = test[,-15], > > y = as.numeric(test$isKilled)-1, > > label="GBM") > > > > prot <- ifelse(test$operator == 'T13', 1, 0) > > privileged <- '1' > > > > fc= fairness_check(explainer, > > protected = prot, > > privileged = privileged) > > plot(fc) > > > > > > And my data is the following: > > > > str(test) > > 'data.frame': 146 obs. of 15 variables: > > $ DepthTree : num 1 1 1 1 1 1 1 1 1 1 ... > > $ NumSubclass : num 0 0 0 0 0 0 0 0 0 0 ... > > $ McCabe : num 1 3 3 3 3 3 3 1 1 2 ... > > $ LOC : num 3 10 10 10 10 10 10 4 4 5 ... > > $ DepthNested : num 1 2 2 2 2 2 2 1 1 2 ... > > $ CA : num 1 1 1 1 1 1 1 1 1 1 ... > > $ CE : num 2 2 2 2 2 2 2 2 2 2 ... > > $ Instability : num 0.667 0.667 0.667 0.667 0.667 0.667 0.667 0.667 > 0.667 > > 0.667 ... > > $ numCovered : num 0 0 0 0 0 0 0 0 0 0 ... > > $ operator : Factor w/ 16 levels "T0","T1","T2",..: 4 4 7 8 8 8 11 > 4 10 7 > > ... > > $ methodReturn : Factor w/ 22 levels "I","V","Z","method",..: 2 2 2 2 2 > 2 2 4 > > 4 2 ... > > $ numTestsCover: num 16 15 15 16 15 15 15 4 4 16 ... > > $ mutantAssert : num 55 55 55 55 55 55 55 13 13 55 ... > > $ classAssert : num 3 3 3 3 3 3 3 3 3 3 ... > > $ isKilled : Factor w/ 2 levels "yes","no": 2 2 2 2 2 2 2 2 2 2 ... > > > dput(test) > > structure(list(DepthTree = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 2, 2, 1, 2, 1, 1, 1), NumSubclass = c(0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2), McCabe = c(1, 3, 3, > > 3, 3, 3, 3, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 2, > > 2, 2, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5, 2, 2, 2, > > 2, 5, 5, 5, 5, 5, 5, 1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 2, 3, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 2, 2, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 2, 2, > > 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1), LOC = c(3, > > 10, 10, 10, 10, 10, 10, 4, 4, 5, 22, 22, 22, 22, 22, 22, 22, > > 22, 3, 3, 3, 3, 3, 8, 8, 8, 4, 23, 23, 23, 23, 23, 23, 23, 23, > > 23, 23, 16, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 8, 16, 16, 16, > > 16, 16, 16, 20, 20, 20, 20, 20, 20, 20, 20, 7, 7, 7, 7, 18, 18, > > 18, 18, 18, 18, 3, 15, 15, 15, 15, 15, 15, 15, 15, 15, 6, 15, > > 15, 15, 15, 15, 15, 15, 15, 15, 9, 9, 9, 9, 9, 9, 4, 4, 3, 3, > > 3, 3, 3, 4, 4, 6, 6, 5, 5, 5, 8, 8, 8, 3, 3, 3, 3, 3, 3, 7, 3, > > 3, 3, 3, 15, 15, 15, 15, 15, 15, 15, 15, 3, 3, 3, 3, 4, 4, 8, > > 4, 4, 4, 3), DepthNested = c(1, 2, 2, 2, 2, 2, 2, 1, 1, 2, 4, > > 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 2, 2, 2, 1, 3, 3, 3, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, > > 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, > > 1, 1, 1, 1, 2, 1, 1, 1, 1), CA = c(1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, > > 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > > 1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1), CE = c(2, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, > > 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 2, 2, 2, 2, 2, 2, 0, 2, 0, 0, 2), Instability = c(0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, > > 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0.667, 0.667, 0.667, 0.667, 0.667, 0.667, 0, 0.667, 0, 0, > > 0.667), numCovered = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 150, 54, 54, 123, 54, 54, 123, 54, 189, 189, 189, 138, 33, 18, > > 27, 27, 18, 27, 15, 54, 54, 150, 150, 54, 150, 150, 54, 150, > > 66, 60, 12, 60, 15, 45, 72, 12, 12, 45, 255, 255, 255, 255, 129, > > 129, 0, 0, 6, 6, 6, 6, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 15, 21, 12, 12, 12, 12, 12, 12, 12, 12, > > 48, 1557, 9, 12, 0, 0, 141, 0, 21, 21, 21), operator = structure(c(4L, > > 4L, 7L, 8L, 8L, 8L, 11L, 4L, 10L, 7L, 4L, 7L, 8L, 8L, 8L, 9L, > > 9L, 11L, 7L, 8L, 2L, 8L, 8L, 7L, 8L, 10L, 11L, 1L, 2L, 2L, 4L, > > 8L, 8L, 8L, 8L, 10L, 12L, 4L, 6L, 6L, 8L, 8L, 8L, 7L, 7L, 8L, > > 8L, 9L, 9L, 1L, 4L, 6L, 8L, 8L, 8L, 1L, 1L, 7L, 7L, 7L, 8L, 8L, > > 13L, 7L, 8L, 9L, 9L, 1L, 1L, 2L, 7L, 8L, 10L, 10L, 4L, 7L, 7L, > > 7L, 8L, 8L, 8L, 9L, 9L, 10L, 1L, 8L, 8L, 8L, 8L, 10L, 11L, 11L, > > 11L, 6L, 7L, 8L, 9L, 9L, 10L, 6L, 10L, 1L, 4L, 7L, 10L, 6L, 7L, > > 13L, 7L, 13L, 7L, 8L, 9L, 4L, 6L, 9L, 8L, 10L, 8L, 10L, 8L, 10L, > > 9L, 8L, 10L, 13L, 10L, 2L, 7L, 7L, 8L, 8L, 9L, 11L, 11L, 10L, > > 10L, 13L, 13L, 8L, 8L, 9L, 4L, 6L, 10L, 10L), .Label = c("T0", > > "T1", "T2", "T3", "T4", "T5", "T6", "T7", "T8", "T9", "T10", > > "T11", "T12", "T13", "T14", "T15"), class = "factor"), methodReturn > > structure(c(2L, > > 2L, 2L, 2L, 2L, 2L, 2L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, > > 4L, 4L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 4L, 4L, 4L, 4L, 4L, 4L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 2L, 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, > > 1L, 1L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, > > 3L, 3L, 1L, 1L, 3L, 3L, 3L, 3L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 2L, 4L, 4L, 4L, > > 4L, 4L, 4L, 4L, 4L, 4L, 3L, 3L, 2L, 2L, 4L, 4L, 1L, 3L, 1L, 1L, > > 4L), .Label = c("I", "V", "Z", "method", "D", "[D", "[[D", "J", > > "[I", "C", "[J", "[C", "[S", "F", "[F", "[B", "S", "B", "[Z", > > "[[S", "[[B", "[[Z"), class = "factor"), numTestsCover = c(16, > > 15, 15, 16, 15, 15, 15, 4, 4, 16, 16, 16, 15, 15, 15, 16, 16, > > 15, 3, 3, 2, 2, 2, 16, 11, 16, 4, 16, 16, 3, 16, 16, 4, 16, 16, > > 16, 16, 2, 3, 2, 1, 4, 1, 16, 15, 16, 15, 16, 16, 2, 2, 2, 3, > > 2, 2, 4, 5, 5, 4, 5, 5, 4, 5, 4, 4, 4, 4, 4, 3, 4, 4, 3, 4, 4, > > 5, 5, 4, 4, 5, 4, 4, 5, 4, 4, 4, 3, 4, 4, 4, 4, 3, 3, 4, 4, 4, > > 4, 4, 6, 6, 0, 0, 2, 2, 2, 2, 7, 17, 17, 15, 15, 15, 15, 15, > > 16, 16, 16, 16, 15, 16, 16, 15, 17, 17, 16, 16, 5, 4, 4, 4, 4, > > 4, 4, 4, 4, 4, 16, 16, 3, 4, 0, 0, 5, 0, 4, 4, 1), mutantAssert = c(55, > > 55, 55, 55, 55, 55, 55, 13, 13, 55, 55, 55, 55, 55, 55, 55, 55, > > 55, 9, 9, 9, 9, 9, 55, 41, 55, 13, 55, 55, 5, 55, 55, 13, 55, > > 55, 55, 55, 8, 13, 8, 4, 13, 4, 55, 55, 55, 55, 55, 55, 9, 9, > > 9, 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 6, 9, 9, 6, > > 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 6, 9, 9, 9, 9, 6, 6, 9, > > 9, 9, 9, 9, 14, 14, 0, 0, 2, 2, 2, 2, 15, 58, 58, 55, 55, 55, > > 55, 55, 58, 58, 58, 55, 55, 55, 55, 55, 58, 58, 58, 58, 9, 9, > > 6, 6, 6, 6, 6, 6, 6, 6, 55, 55, 5, 13, 0, 0, 11, 0, 9, 9, 8), > > classAssert = c(3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > > 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > 0, 0, 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, > > 10, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, > > 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 1, 1, 3, 0, > > 3, 3, 0), isKilled = structure(c(2L, 2L, 2L, 2L, 2L, 2L, > > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, > > 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, > > 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, > > 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, > > 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, > > 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, > > 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, > > 1L, 2L, 1L, 1L, 1L), .Label = c("yes", "no"), class = "factor")), > > row.names = c(3L, > > 9L, 12L, 13L, 14L, 15L, 19L, 21L, 22L, 24L, 28L, 29L, 39L, 44L, > > 46L, 51L, 52L, 57L, 62L, 63L, 68L, 71L, 73L, 75L, 77L, 80L, 83L, > > 84L, 85L, 86L, 90L, 95L, 100L, 102L, 103L, 108L, 112L, 120L, > > 122L, 123L, 142L, 143L, 146L, 158L, 159L, 160L, 163L, 167L, 168L, > > 170L, 174L, 176L, 183L, 186L, 192L, 196L, 199L, 203L, 205L, 206L, > > 208L, 214L, 221L, 226L, 229L, 233L, 234L, 235L, 236L, 237L, 238L, > > 249L, 252L, 255L, 260L, 267L, 270L, 271L, 273L, 275L, 276L, 277L, > > 278L, 286L, 288L, 293L, 295L, 297L, 298L, 300L, 301L, 302L, 306L, > > 312L, 313L, 316L, 317L, 331L, 333L, 338L, 341L, 342L, 344L, 346L, > > 348L, 359L, 370L, 375L, 378L, 381L, 382L, 383L, 386L, 389L, 390L, > > 394L, 397L, 400L, 402L, 403L, 404L, 408L, 415L, 418L, 419L, 423L, > > 425L, 426L, 429L, 431L, 432L, 433L, 444L, 446L, 447L, 448L, 449L, > > 451L, 452L, 457L, 458L, 470L, 474L, 476L, 479L, 484L), class > "data.frame") > > > > > > > > > > On Wed, Jan 26, 2022 at 3:29 PM PIKAL Petr <mailto: > petr.pikal at precheza.cz> > > wrote: > > Hi > > > > It seems that you are hiding what you really do. > > > > This > > > options(error = NULL) > > works fine without any error. So please If you want some reasonable > answer > > post question with data and code which is causing the error. > > > > My wild guess is that you have some objects in your environment and you > do > > not know that they are used in you commands. Try to start fresh R session > > and try to inspect your environment with > > > > ls() > > > > Cheers > > Petr > > > > > -----Original Message----- > > > From: R-help <mailto:r-help-bounces at r-project.org> On Behalf Of javed > khan > > > Sent: Wednesday, January 26, 2022 3:05 PM > > > To: Ivan Krylov <mailto:krylov.r00t at gmail.com> > > > Cc: R-help <mailto:r-help at r-project.org> > > > Subject: Re: [R] Error in if (fraction <= 1) { : missing value where > > TRUE/FALSE > > > needed > > > > > > Ivan, thanks > > > > > > When I use options(error = NULL) > > > > > > it says: Error during wrapup: missing value where TRUE/FALSE needed > > > Error: no more error handlers available (recursive errors?); invoking > > 'abort' > > > restart > > > > > > With traceback(), I get > > > > > > 4: readable_number(max_value - min_value, FALSE) > > > 3: get_nice_ticks(lower_bound, upper_bound) > > > > > > On Wed, Jan 26, 2022 at 2:53 PM Ivan Krylov <mailto: > krylov.r00t at gmail.com> > > > wrote: > > > > > > > On Wed, 26 Jan 2022 14:47:16 +0100 > > > > javed khan <mailto:javedbtk111 at gmail.com> wrote: > > > > > > > > > Error in if (fraction <= 1) { : missing value where TRUE/FALSE > > > > > needed > > > > > > > > > var <- ifelse(test$operator == 'T14', 1, 0) > > > > > > > > The error must be in a place different from your test$operator > > > > comparison. Have you tried traceback() to get the call stack leading > > > > to the error? Or options(error = recover) to land in a debugger > > > > session the moment an uncaught error happens? (Use options(error > > > > NULL) to go back to the default behaviour.) > > > > > > > > Unrelated: var <- test$operator == 'T14' will also give you an > > > > equivalent logical vector with a bit less work. > > > > > > > > -- > > > > Best regards, > > > > Ivan > > > > > > > > > > [[alternative HTML version deleted]] > > > > > > ______________________________________________ > > > mailto:R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, > see > > > https://stat.ethz.ch/mailman/listinfo/r-help > > > PLEASE do read the posting guide > > http://www.R-project.org/posting-guide.html > > > and provide commented, minimal, self-contained, reproducible code. > > ______________________________________________ > > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > > https://stat.ethz.ch/mailman/listinfo/r-help > > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > > and provide commented, minimal, self-contained, reproducible code. >[[alternative HTML version deleted]]