知识点自测
- R的对象类型都有什么?数据类型有什么?
- 如何获取一个变量的数据类型?
- 如何获取如下df中每一列的数据类型?
> df=data.frame(1:5,c(T,F,T,F,F),letters[2:6])
> df
X1.5 c.T..F..T..F..F. letters.2.6.
1 1 TRUE b
2 2 FALSE c
3 3 TRUE d
4 4 FALSE e
5 5 FALSE f
答案
- R的对象类型一共七种
- vector 向量
- list 列表
- matrix 矩阵
- array 数组
- factor 因子
- data.frame 数据框
- scalar 标量
数据类型有非常多种,我们平时会接触到的有如下类型
- numeric
- complex
- logical
- character
- null
- double
- list
- …
首先搞懂自己想要的是对象类型还是数据类型!!!
获取数据类型
- typeof()
- mode()
- storage.mode()
> typeof(df)
[1] "list"
> mode(df)
[1] "list"
> storage.mode(df)
[1] "list"
- 使用str() 函数能方便的得到一个R对象的结构
> str(df)
'data.frame': 5 obs. of 3 variables:
$ X1.5 : int 1 2 3 4 5
$ c.T..F..T..F..F.: logi TRUE FALSE TRUE FALSE FALSE
$ letters.2.6. : Factor w/ 5 levels "b","c","d","e",..: 1 2 3 4 5
还有一个函数也可以看到R对象的详细信息,不过他只能看对象类型,没有展示具体列的数据类型
> attributes(df)
$names
[1] "X1.5" "c.T..F..T..F..F." "letters.2.6."
$class
[1] "data.frame"
$row.names
[1] 1 2 3 4 5