+
Skip to content

jaganmn/ifelse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

base::ifelse() ifelse::ifelse1() dplyr::if_else() hutils::if_else() data.table::fifelse() kit::iif(tprom = TRUE)
is.na(test) replacement not supported supported supported supported supported supported
constraint on typeof(test) none none only "logical" only "logical" only "logical" only "logical"
constraint on class(test) coercible to "logical" coercible to "logical" none none none none
constraint on length(test) none none none none none none
constraint on dim(test) none none none none none none
constraint on typeof(yes|no) none none vector type excluding "expression" vector type excluding "complex", "list", "expression"; identical vector type excluding "raw", "expression"; identical or mixture of "integer", "double" vector type excluding "raw", "expression"
constraint on class(yes|no) has methods for [, [<-, length, rep (or internal default methods work) has methods for [, [<-, c, length (or internal default methods work) vctrs::vec_ptype_common has methods for ... (or internal default methods work) identical oldClass(.) identical oldClass(.) (but not enforced, wrongly)
constraint on length(yes|no) none none if strict = FALSE or NA (latter warns); 1 or length(test) if strict = TRUE 1 or if (is.array(.)) k*NROW(test) else length(test) 1 or length(test) 1 or length(test) 1 or length(test)
constraint on dim(yes|no) none none NROW(.) == NROW(test) and more due to vctrs::vec_size_common none none none
typeof(value) type after subassignment from yes, no to test type of c(yes, no) vctrs::vec_ptype_common common type of yes, no common type of yes, no higher of types of yes, no
class(value) class after subassignment from yes, no to test class of c(yes, no) vctrs::vec_ptype_common class after subassignment from yes to no if length(no) == length(test) common class of yes, no common class of yes, no
length(value) length(test) length(test) length of longest argument length(test) length(test) length(test)
names(value) if (is.atomic(test)) names(test) else NULL names(test) splicing of names(yes), names(no) if (length(no) == length(test)) names(no) else NULL names(test) names(test)
dim(value) if (is.atomic(test)) dim(test) else NULL dim(test) dim of longest argument if (length(no) == length(test)) dim(no) else NULL NULL NULL
dimnames(value) if (is.atomic(test)) dimnames(test) else NULL dimnames(test) dimnames of longest argument if (length(no) == length(test)) dimnames(no) else NULL NULL NULL
other attributes from test if atomic from c(yes, no) none from no if length(no) == length(test) from first of yes, no not identical to NA from yes or no or both depending on coercions
support for factors yes, no none; uses integer representation full; uses levels(c(yes, no)) full; uses levels(c(yes, no)) partial; requires identical levels(.) partial; requires identical levels(.) partial; requires identical levels(.)
support for non-basic S4 classes full; classes need suitable implementation full; classes need suitable implementation none none none none

About

'ifelse' Variants

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载