Q
类型和变量的类
74
A
回答
87
在R中,每个“对象”具有mode
和class
。前者表示对象如何存储在内存中(数字,字符,列表和函数),而后者表示其抽象类型。例如:
d <- data.frame(V1=c(1,2))
class(d)
# [1] "data.frame"
mode(d)
# [1] "list"
typeof(d)
# list
正如你可以看到数据帧被存储在存储器中作为list
但它们包裹成data.frame
对象。后者允许使用成员函数以及使用自定义行为重载函数,如print
。
typeof
(storage.mode
)通常会给出与mode
相同的信息,但并不总是如此。例证:
typeof(c(1,2))
# [1] "double"
mode(c(1,2))
# [1] "numeric"
这背后的原因可以发现here:
将R特定功能的typeof返回R对象
功能的类型模式给出信息关于Becker意义上的对象的模式,Chambers & Wilks(1988),并且与S语言的其他实现更兼容
我上面发布的链接还包含所有原生R basic types
(向量,列表等)的列表。)和所有compound objects
(因子和数据帧)以及mode
,typeof
和class
如何与每种类型相关的一些示例。
4
type
真的是指R.提供的不同的数据结构在R Language Definition manual这个讨论可以让你开始对象和类型。
另一方面,class
意味着R中的其他内容比您预期的还要多。从 的R Language Definition手册(与您的R版本出来):
2.2.4类
R有一个复杂的等级制度,通过class属性主要控制。该属性是包含对象继承的类的列表 的字符向量。这构成了R中的“通用方法”功能的基础。
该属性可以被虚拟访问和操纵,而不受用户的限制。没有检查一个对象实际上是否包含类方法期望的组件。因此,应该谨慎地改变类属性,当它们可用时,特定的创建和强制功能应该是优选的。
相关问题
- 1. 指定类型的变量和类
- 2. 类型的“变量”,类型为“可变”
- 3. 变量和值类型
- 4. SICP类型和变量
- 5. 交换变量名和变量类型
- 6. 变量类型
- 7. 的类型变量
- 8. 类型铸造变量中的类型
- 9. 类型类型中的变量
- 10. 参数类类型变量
- 11. 更改类变量类型
- 12. 类变量类型提示
- 13. Windows Phone变量类类型
- 14. ReSharper的和隐式类型的变量
- 15. 变量的类型int32_t和的int64_t等
- 16. IEnumerable变量类型
- 17. Java变量类型
- 18. mysqli_stmt_bind_param变量类型
- 19. 与类型变量
- 20. ActionScript变量类型
- 21. Ambigous类型变量
- 22. CPU变量类型
- 23. python类实例变量和类变量
- 24. 类和变量声明(相同类的类型)
- 25. 类型铸造对象类型变量
- 26. Groovy和变量类型的问题
- 27. 自动变量和它的类型
- 28. Python中的变量和数据类型
- 29. 变量类型的视频和图像
- 30. `coerce`和类型变量的实例
本文相关文章也可能提供有用的信息:http://stackoverflow.com/questions/8855589/a-comprehensive-survey-of-the-types-of-things-in-r-mode-and-class-和式 – 2015-07-30 03:33:23