testthat 包的 expect_is 和 expect_type 有什么区别?
What is the difference between expect_is and expect_type of the testthat package?
R 包 testthat
包含两个我认为相似的函数来测试对象是否属于某种类型(整数、字符等):expect_is()
和 expect_type()
.这两个函数有什么区别?文档指出 expect_is()
是一种较旧的形式,但是 expect_type()
呢?也许您可以提供一些示例,说明何时使用一个而不是另一个。
expect_is
测试 class,expect_type
测试类型。文档解释说 expect_type
与 R 的基本函数 typeof
的输出进行比较,expect_is
与 class
.
的输出进行比较
因此,如果我创建一个整数矩阵,它的类型为 "integer" 和 class "matrix":
> typeof(matrix(1:10,2,5))
[1] "integer"
> class(matrix(1:10,2,5))
[1] "matrix"
>
查看 typeof
和 class
的帮助以获取更多信息,大多数 R 的介绍应该讨论类型和 classes。
另请参阅 mode
和 storage.mode
。
R 包 testthat
包含两个我认为相似的函数来测试对象是否属于某种类型(整数、字符等):expect_is()
和 expect_type()
.这两个函数有什么区别?文档指出 expect_is()
是一种较旧的形式,但是 expect_type()
呢?也许您可以提供一些示例,说明何时使用一个而不是另一个。
expect_is
测试 class,expect_type
测试类型。文档解释说 expect_type
与 R 的基本函数 typeof
的输出进行比较,expect_is
与 class
.
因此,如果我创建一个整数矩阵,它的类型为 "integer" 和 class "matrix":
> typeof(matrix(1:10,2,5))
[1] "integer"
> class(matrix(1:10,2,5))
[1] "matrix"
>
查看 typeof
和 class
的帮助以获取更多信息,大多数 R 的介绍应该讨论类型和 classes。
另请参阅 mode
和 storage.mode
。