R语言中,简单的S3和S4类的定义

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言中,简单的S3和S4类的定义相关的知识,希望对你有一定的参考价值。

R语言中,简单的S3和S4类的定义


# S3 class

newstudent <- function(sid, sname, ssex){

  tmp <- list(id = sid, name = sname, sex = ssex)

  class(tmp) <- "student"

  return(tmp)

}

print.student <- function(st){

  cat(st$id, "\n")

  cat(st$name, "\n")

  cat(st$sex, "\n")

}

st = newstudent(11, "jack", "male")

#print(st)

st

# S4 class

setClass("student",

         representation(

           id = "numeric",

           name = "character",

           sex = "character"

         ))

# print is not a S4 generic. show methods are mapped to print for convenience, though. 

setMethod("show", "student",

          function(object){

            cat([email protected], "\n")

            cat([email protected], "\n")

            cat([email protected], "\n")

          })

st = new("student", id = 41, name = "tom",  sex = "male")

#print(st)

st


本文出自 “GONE WITH THE WIND” 博客,请务必保留此出处http://h2appy.blog.51cto.com/609721/1855788

以上是关于R语言中,简单的S3和S4类的定义的主要内容,如果未能解决你的问题,请参考以下文章

R语言基于S4的面向对象编程

关于R语言的数据类型和数据结构的如何区分

R语言快速上手入门

如何R语言快速上手入门

R语言面向对象编程:S3和R6

R语言利器之ddply和aggregate