第6章 数据框

矩阵只能包含一个种类的数据。

# 创建向量
var_vector <- c(1,2,3,4,5,6)

# matrix()函数生成矩阵
var_matrix <- matrix(var_vector, nrow=2) 

# 合并不同数据类型的向量与矩阵
cbind(c("M","F"), var_matrix)
##      [,1] [,2] [,3] [,4]
## [1,] "M"  "1"  "3"  "5" 
## [2,] "F"  "2"  "4"  "6"

如上所示,当加入字符型数据后,矩阵中的数字也被强制转变为字符型(即被双引号包裹),这被称为隐式强制。因此,使用数据框(dataframe)可以存储不同类型的数据,保留原有数据的完整性。

# 调用R自带iris数据框
data(iris) 

# 查看数据类型
class(iris) 
## [1] "data.frame"
# 查看数据框维度
dim(iris) 
## [1] 150   5
# 查看数据框内的变量类型
str(iris) 
## 'data.frame':    150 obs. of  5 variables:
##  $ Sepal.Length: num  5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
##  $ Sepal.Width : num  3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
##  $ Petal.Length: num  1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
##  $ Petal.Width : num  0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
##  $ Species     : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...