假设我有一个这样的函数:
myf = function(x) {
res = dostuff(x)
res # this is a data.frame
}
我想做点特别的事情
res
, 例如,我想做一些通用的函数,比如
print.myf, summary.myf, ...
,所以我可以继续给它上课:myf = function(x) {
res = dostuff(x)
class(res) = 'myf'
res
}
但是这样我就不能再将它用作 data.frame 了。
最佳答案
是的,我的标准(简单)示例是
R> now <- Sys.time()
R> class(now)
[1] "POSIXct" "POSIXt"
R> class(as.POSIXlt(now))
[1] "POSIXlt" "POSIXt"
R>
这也是使用
inherits("someClass")
进行测试的专业提示背后的原因。而不是测试 class(obj)=="someClass"
的结果.
关于r - R 中的对象可以有多个类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19335914/