假设我们有一个包含多个dataframe的列表和一个变量a,要对每个dataframe执行同样的操作,操作包括将dataframe的每一列都相乘以a。我们可以先定义一个函数,然后使用lapply在每个dataframe上应用这个函数并将其结果存储到一个新的列表中。
代码示例:
# 创建一个包含多个dataframe的列表和一个变量a
df_list <- list(df1 = data.frame(x = 1:3, y = 3:1), df2 = data.frame(x = 4:6, y = 6:4))
a <- 2
# 定义要应用在每个dataframe上的函数
multiply_by_a <- function(df, a) {
df * a
}
# 使用lapply在每个dataframe上应用函数并将结果存储到新的列表中
new_df_list <- lapply(df_list, multiply_by_a, a)
# 查看新的dataframe列表
new_df_list
输出:
$df1
x y
1 2 6
2 4 4
3 6 2
$df2
x y
1 8 12
2 10 10
3 12 8
此时,我们获得了一个新的包含经过操作后的dataframe的列表new_df_list。