如果给一个对象x,是有办法分类它是否是S3或S4(或"其他")?我已经看过is.object()并isS4(),并可以识别的东西是一个对象(或没有),而且它是一个S4对象(或没有).但是,在我看来,S3对象并不是所有不是S4对象的对象的补充.
因此,如何以编程方式完成这些任务?
这是一个让我烦恼的例子,取自以下的帮助is.object():
a = as.factor(1:3)
is.object(a) # TRUE
isS4(a) # FALSE
Run Code Online (Sandbox Code Playgroud)
这是否意味着这a是一个S3对象?
Spa*_*man 10
如果它是一个对象而不是S4,则它是一个S3:
is.object(foo) & !isS4(foo)
Run Code Online (Sandbox Code Playgroud)
is.object当事物具有类属性时,检查一些神奇的OBJECT位,因此它本质上是一种快速的方法any(names(attributes(foo))=="class"),它定义了一个S3对象.
| 归档时间: |
|
| 查看次数: |
276 次 |
| 最近记录: |