x <- ifelse(x < 0 | x > 1, NA, x ) if( any(is.na(x)) ) warning('x not between 0 and 1') log(x / (1 - x) )
> logitpercent(c('50%','150%')) Error in logit(as.numeric(x)/100) : x not between 0 and 1
logit <- function(x){ if( any(x < 0 | x > 1) ) stop('x not between 0 and 1') log(x / (1 - x) ) }