【发布时间】:2020-01-03 19:48:46
【问题描述】:
我有一个简单的问题,可能对这里的社区有所帮助。通常,在编写函数的上下文中,我想检查一个对象是否属于某个类。我有两个选择:我可以使用通用的is(object, class),也可以使用更具体的函数,例如is.list()、is.data.frame()、is.array()、is.numeric()、is.matrix() 等。
考虑我是否想测试一个对象是否是一个矩阵。 is(object, matrix) 和 is.matrix(object) 之间有什么区别吗?是否应该在某些情况下使用一种方法,例如检查参数是否是函数内部的某个类?
A <- matrix(c(1:6), ncol = 2)
is(A, "matrix")
is.matrix(A)
#Testing whether A is a data.frame. Both should be FALSE.
is(A, "data.frame")
is.data.frame(A)
谢谢!
【问题讨论】:
-
我自己没有做过,但我想
is的一个优势是你可以为类传递一个字符变量。这可以减少代码。
标签: r