3.2 类
R中的所有变量都有一个类,表明此变量属于什么类型。例如,大部分的数字是numeric
类(其他类型请参见下一节),逻辑值是logical
类。其实,因为R没有标量类型(scalar type),所以更严格地说,数字向量应该是numeric
类,逻辑值向量是logical
类。在R中“最小的”数据类型是向量。
可使用class( my_variable )
来找出变量的类名:
class(c(TRUE, FALSE))
## [1] "logical"
值得的注意是,所有的变量除了类之外,还有一个内部存储类型(通过typeof
访问)、一个模式(mode
),以及一个存储模式(storage.mode
)。这听起来很复杂,不过无需担心,因为类型、模式和存储模式大多为历史遗留存在,实际中你只需使用对象的类(除非你加入了R的核心团队)。附录A有一个参照表显示了各种变量类型的类、类型和(存储)模式及其关系。如果你不认识其中的一些类,不用担心,也没必要死记硬背。你只需浏览表格,注意它们之间的关联性。
简单起见,从现在开始,我会把“类”(class)和“类型”(type)完全等同起来(除非另作说明)。