Предпочтительный метод проверки класса объекта в R
Каков предпочтительный метод проверки класса объекта в R?
(1)
is.data.frame(df)
(2)
class(df) == 'data.frame'
(3)
'data.frame' %in% class(df)
Ответ 1
Я бы сказал
inherits(df,"data.frame")
или
is(df,"data.frame")
между прочим, № 2 в вашем списке может завершиться неудачей, потому что (как вы предлагаете в # 3) class(df) может иметь длину > 1. (is.data.frame хорошо, но не все классы имеют методы is.: см. methods("is"))
Ответ 2
Для меня это будет:
is.data.frame(df)
Является более ясным вариантом использования в условиях. Кроме того, это опция "меньше кода" для трех, если это важно для вас.