跳到主要内容

R语言向量

提示
  1. 创建向量:在R中,使用c()函数创建向量,可包含相同类型的多个元素,如字符串或数字。
  2. 访问和修改元素:通过索引号访问向量元素,并可以通过重新赋值特定索引来修改元素。
  3. 向量操作:使用length()函数确定向量中元素的数量,以及rep()函数重复整个向量或其各个元素。

向量是 R 中的基本数据结构,用于存储相似类型的数据。例如,

假设我们需要记录 5 位员工的年龄。与其创建 5 个单独的变量,我们不妨直接创建一个向量。

年龄向量

在 R 中创建向量

在 R 中,我们使用 c() 函数来创建向量。例如,

# 创建字符串类型的向量
employees <- c("Sabby", "Cathy", "Lucy")

print(employees)

# 输出: [1] "Sabby" "Cathy" "Lucy"

在上面的例子中,我们创建了一个名为 employees 的向量,包含元素:SabbyCathyLucy

这里,c() 函数通过组合 employees 的三个不同元素来创建一个向量。

在 R 中访问向量元素

在 R 中,向量中的每个元素都与一个数字相关联。这个数字被称为向量索引。

我们可以使用索引号 (1, 2, 3 ) 访问向量的元素。例如,

# 一个字符串类型的向量
languages <- c("Swift", "Java", "R")

# 访问 languages 的第一个元素
print(languages[1]) # "Swift"

# 访问 languages 的第三个元素
print(languages[3]) # "R"

在上面的例子中,我们创建了一个名为 languages 的向量。向量的每个元素都与一个整数编号相关联。

R 向量的索引

这里,我们使用了向量索引来访问向量元素:

  • languages[1] - 访问第一个元素 "Swift"
  • languages[3] - 访问第三个元素 "R"

注意:在 R 中,向量索引始终从 1 开始。因此,向量的第一个元素位于索引 1,第二个元素位于索引 2,依此类推。

修改向量元素

要更改向量元素,我们可以简单地将新值重新赋值给特定索引。例如,

dailyActivities <- c("Eat", "Repeat")
cat("初始向量:", dailyActivities)

# 更改索引 2 处的元素
dailyActivities[2] <- "Sleep"

cat("\n更新后的向量:", dailyActivities)

输出

初始向量: Eat Repeat
更新后的向量: Eat Sleep

这里,我们通过简单地赋予新值,将索引 2 处的向量元素从 "Repeat" 改为 "Sleep"

R 中的数值型向量

与字符串一样,我们使用 c() 函数来创建数值型向量。例如,

# 一个从 1 到 5 的数值序列向量
numbers <- c(1, 2, 3, 4, 5)

print(numbers)

# 输出: [1] 1 2 3 4 5

这里,我们使用了 c() 函数创建了一个名为 numbers 的数值序列向量。

然而,有一种更高效的方式来创建数值序列。我们可以使用 : 运算符,而不是 c()

在 R 中创建数值序列

在 R 中,我们使用 : 运算符来创建一个数值序列的向量。例如,

# 一个从 1 到 5 的数值序列向量
numbers <- 1:5

print(numbers)

输出

[1] 1 2 3 4 5

在这里,我们使用了 : 运算符创建了名为 numbers 的向量,包含了顺序的数值,即 15

在 R 中重复向量

在 R 中,我们使用 rep() 函数来重复向量的元素。例如,

# 重复向量的序列 2 次
numbers <- rep(c(2, 4, 6), times = 2)

cat("使用 times 参数:", numbers)

输出

使用 times 参数: 2 4 6 2 4 6

在上面的示例中,我们创建了一个包含元素 2, 4, 6 的数值向量。注意代码,

rep(numbers, times=2)

这里,

  • numbers - 要重复的向量的元素
  • times = 2 - 重复向量两次

我们可以看到,我们重复了整个向量两次。然而,我们也可以重复向量中的每个元素。为此,我们使用 each 参数。

让我们看一个例子。

# 重复向量中的每个元素 2 次
numbers <- rep(c(2, 4, 6), each = 2)

cat("\n使用 each 参数:", numbers)

输出

使用 each 参数: 2 2 4 4 6 6

在上面的示例中,我们创建了一个包含元素 2, 4, 6 的数值向量。注意代码,

rep(numbers, each = 2)

这里,each = 2 - 重复向量中的每个元素两次

在 R 中遍历向量

我们也可以使用 for 循环访问向量的所有元素。例如,

在 R 中,我们也可以使用 for 循环 遍历向量的每个元素。例如,

numbers <- c(1, 2, 3, 4, 5)

# 遍历 numbers 的每个元素
for (number in numbers) {
print(number)
}

输出

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

在 R 中向量的长度

我们可以使用 length() 函数来找出向量中元素的数量。例如,

languages <- c("R", "Swift", "Python", "Java")

# 使用 length() 查找 languages 中的元素总数
cat("总元素数量:", length(languages))

输出

总元素数量: 4

这里,我们使用了 length() 来找出 languages 向量的长度。