Question

What is the preferred method of checking an object's class in R?

(1)

is.data.frame(df)

(2)

class(df) == 'data.frame'

(3)

'data.frame' %in% class(df)
Was it helpful?

Solution

I would say

inherits(df,"data.frame")

or

is(df,"data.frame")

among other things, #2 in your list can fail because (as you suggest in #3) class(df) can have length > 1. (is.data.frame is nice, but not all classes have is. methods: see methods("is"))

OTHER TIPS

For me it'd be:

is.data.frame(df)

Is a clearer option to use in conditions. Also, is the 'less code' option of the three, if that is important for you.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top