A:如何使用带有多个参数的 lapply() 函数


R 中的lapply()函数可用于将函数应用于列表、向量或数据帧的每个元素,并相应地获得列表

要使用带有多个参数的lapply()函数,您可以使用以下基本语法:

 #define function
my_function <- function (var1,var2,var3){
  var1*var2*var3
}

#apply function to list using multiple arguments
lapply(my_list, my_function, var2=3, var3=5)

以下示例展示了如何在实践中使用此语法。

示例:如何在 R 中使用带有多个参数的 lapply()

假设我们在 R 中有以下列表:

 #create a list
my_list <- list(A=1, B=2, C=3, D=4)

#view list
my_list

$A
[1] 1

$B
[1] 2

$C
[1] 3

$D
[1] 4

以下代码定义了一个函数,该函数接受三个变量并将这三个变量相乘,然后使用lapply()函数将此函数应用于列表中的每个值:

 #define function
my_function <- function (var1,var2,var3){
  var1*var2*var3
}

#apply function to list using multiple arguments
lapply(my_list, my_function, var2=3, var3=5)

$A
[1] 15

$B
[1] 30

$C
[1] 45

$D
[1] 60

请注意, lapply()函数将列表中的每个值乘以 3,然后乘以 5。

例如:

  • 列表中的第一个值:1 * 3 * 5 = 15
  • 列表中的第二个值:2 * 3 * 5 = 30
  • 列表中的第三个值:3 * 3 * 5 = 45
  • 列表中的第四个值:4 * 3 * 5 = 60

使用类似的语法,您可以向lapply()函数提供任意数量的参数。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何将函数应用于 R 中的每个数据框行
如何在 R 中使用 colSums() 函数
如何在 R 中使用 rowSums() 函数

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注