31

在 R 中检查对象的类的首选方法是什么?

(1)

is.data.frame(df)

(2)

class(df) == 'data.frame'

(3)

'data.frame' %in% class(df)
4

2 回答 2

33

我会说

inherits(df,"data.frame")

或者

is(df,"data.frame")

除其他外,列表中的 #2 可能会失败,因为(正如您在 #3 中建议的那样)class(df)长度可能 > 1。(is.data.frame很好,但并非所有类都有is.方法:请参阅methods("is")

于 2013-07-18T20:47:52.647 回答
4

对我来说是:

is.data.frame(df)

是在条件下使用的更清晰的选项。此外,如果这对您很重要,那么这三个选项是“少代码”选项。

于 2013-07-18T20:49:01.277 回答