📜  重复示例 - R 编程语言(1)

📅  最后修改于: 2023-12-03 15:28:31.632000             🧑  作者: Mango

重复示例 - R 编程语言

在 R 编程语言中,重复是一个常见的编程需求。以下是一些常见的重复示例,以及如何在 R 中实现它们。

循环

使用循环可以重复执行一系列语句。在 R 中,有两种类型的循环:for 循环和 while 循环。

for 循环

for 循环通常用于已知循环次数的情况,例如循环遍历一个向量或矩阵。

以下是一个简单的 for 循环示例,从 1 循环到 5 并输出每个数字:

for (i in 1:5) {
  print(i)
}

输出:

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
while 循环

while 循环通常用于未知循环次数的情况,例如循环直到条件为真。

以下是一个简单的 while 循环示例,循环直到变量 i 大于等于 5 并输出每个数字:

i <- 1
while (i < 5) {
  print(i)
  i <- i + 1
}

输出:

[1] 1
[1] 2
[1] 3
[1] 4
apply 函数

使用 apply 函数可以在向量、矩阵或数据框的行或列上执行函数。apply 函数会自动重复执行函数,直到所有元素都被处理完为止。

以下是一个简单的 apply 函数示例,计算一个矩阵的每一列的平均值:

m <- matrix(c(1, 2, 3, 4, 5, 6), nrow = 2, ncol = 3)
apply(m, 2, mean)

输出:

[1] 2.5 3.5 4.5
lapply 函数

使用 lapply 函数可以在列表中的每个元素上执行函数。与 apply 函数不同,lapply 函数可以处理不同长度和类型的元素。

以下是一个简单的 lapply 函数示例,将一个列表中的每个元素转换为大写字母:

l <- list("hello", "world", 123)
lapply(l, toupper)

输出:

[[1]]
[1] "HELLO"

[[2]]
[1] "WORLD"

[[3]]
NULL
sapply 函数

使用 sapply 函数可以在向量、列表或矩阵上执行函数,并返回一个向量或矩阵。

以下是一个简单的 sapply 函数示例,将一个向量每个元素都加 1:

v <- c(1, 2, 3, 4, 5)
sapply(v, function(x) x + 1)

输出:

[1] 2 3 4 5 6
Conclusion

以上是一些常见的 R 重复示例及其实现方式。掌握这些技巧将帮助您更高效地编写 R 代码。