📜  r sapply 语法 - R 编程语言(1)

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

R 编程语言 - 'sapply' 语法介绍

什么是sapply()函数?

sapply()是R编程语言中一个非常有用的函数,它允许我们将一个向量、列表或数据框的结果传递给一个函数,并返回一个结果向量。它的输出结果通常是一个向量或矩阵。

sapply()函数的语法
sapply(X, FUN, ...)
  • X:需要传递给函数的向量、列表或数据框。
  • FUN:需要对X内的元素执行的函数。
  • ...:传递到FUN函数中的其他参数。
sapply()函数的例子
# 创建一个向量并使用sapply()函数返回每个元素的平方
x <- c(1,2,3,4,5)
sapply(x, function(i) i^2)

输出结果:

[1]  1  4  9 16 25
# 创建一个列表并使用sapply()函数将每个元素添加一个数字
lst <- list(a=1, b=2, c=3)
sapply(lst, function(i) i+5)

输出结果:

a b c
6 7 8
# 创建一个数据框并使用sapply()函数返回每列的平均值
df <- data.frame(a=c(1,2,3), b=c(4,5,6))
sapply(df, mean)

输出结果:

  a   b
2.0 5.0
sapply()函数的使用技巧
  • 如果您想在返回中保留命名向量,则可以使用simplify = FALSE选项。
  • 使用匿名函数来定义FUN可以使代码更加简洁。
  • sapply()函数通常可以代替for循环,因为它可以更快地处理大型数据集。
  • sapply()函数的输出结果通常是一个向量或矩阵。如果需要返回列表,则可以考虑使用lapply()函数。
  • 如果要将数据框的每行或每列传递给一个函数,则可以使用apply()函数。
总结

sapply()函数是R编程中非常有用的一个函数。它可以帮助我们在向量、列表或数据框中遍历元素,并按照我们的期望执行函数。通过此函数,可以减少常见的for循环,让我们的代码更加简洁和高效。