在第二章介绍了 R 语言中的基本数据类型,本章会将其组装起来,构成特殊的数据结构,即向量、矩阵与列表。这些数据结构在社交网络分析中极其重要,本质上对图的分析,就是对邻接矩阵的分析,而矩阵又是由若干个向量构成,因此需要熟练掌握这些特殊的数据结构。
向量 向量的创建向量(vector)作为 R 语言中最简单的数据结构,由一串有序的基本数据类型变量构成。
x <- c(1, 2, 3, 4, 5)上面一行代码就是创建一个包含 5 个元素的向量 x,而 c() 就是创建向量的函数。多个向量也可以使用 c() 进行拼接:
x <- c(1, 2, 3, 4, 5) y <- c(6, 7, 8, 9, 10) z <- c(x, y)代码中的向量 z 包含 10 个元素,即向量 x 和向量 y 的拼接。
向量的创建也可以通过面向对象的方式实现:
x <- vector(mode = "integer", length = 5)参数 mode 为向量中存储的数据类型,对应 R 语言中基本的数据类型,如整型 integer,浮点型 numeric, 字符串型 character,逻辑型 logical 等等;length 为初始向量的长度。向量作为一种无限长度的数据结构,此处的 length 是指向量初始化时的长度,后续仍然可以使用 c() 添加元素。
x <- c(x, 0) # 向 x 中添加元素 0 向量元素的访问向量中的元素通过“[索引]”的形式访问。需要注意的是 R 语言中的索引不代表偏移量,而代表第几个,即索引从 1 开始。
> x <- c(10, 9, 8, 7, 6) > x[2] [1] 9在了解向量元素的访问后,也可以通过元素访问的形式向其中添加元素:
> x[6] <- 5 # x 原长度为5 > x [1] 10 9 8 7 6 5