如何在R中编写is.customClass函数?

如何在R中编写is.customClass函数?,r,object,R,Object,我们都知道像is.data.frame或is.double等函数。可能很容易做到,但谷歌很难做到:如何创建自己的is。?功能?那么,有没有更好的方法: is.myClass <- function(x){ if(class(x) %in% "myClass") return(TRUE) else return(FALSE) } is.myClass也许继承就足够了: is.myClass <- function(x) {inherits(x,"myClass")} x <-

我们都知道像
is.data.frame
is.double
等函数。可能很容易做到,但谷歌很难做到:如何创建自己的is。?功能?那么,有没有更好的方法:

is.myClass <- function(x){
if(class(x) %in% "myClass") return(TRUE)
else return(FALSE)
}

is.myClass也许
继承
就足够了:

is.myClass <- function(x) {inherits(x,"myClass")}

x <- 1
is.myClass(x)
[1] FALSE
class(x) <- c(class(x),"myClass")
is.myClass(x)
[1] TRUE

is.myClass也许
继承
就足够了:

is.myClass <- function(x) {inherits(x,"myClass")}

x <- 1
is.myClass(x)
[1] FALSE
class(x) <- c(class(x),"myClass")
is.myClass(x)
[1] TRUE

is.myClass这个问题似乎是相关的:我认为应该反过来说:
function(x){%class(x)中的“myClass”%
,但正如@James指出的那样,
inherits
更惯用(我不知道它是否有任何其他优点)这个问题似乎是相关的:我认为应该反过来说:
function(x){“myClass”%in%class(x)}
,但正如@James指出的那样,
继承
更为惯用(我不知道它是否有任何其他优点),您不需要对单行使用
{
}
functions@hadley习惯的力量。记不得口译员是否因使用口译员而受到处罚。记住是否有口译员处罚是浪费时间;在我看来它很难看你不需要单行本的
{
}
functions@hadley习惯的力量。记不得口译员是否因使用口译员而受到处罚。记住是否有口译员处罚是浪费时间;在我眼里它看起来很难看