r 语言future.apply包中函数代码解释
时间: 2024-02-19 21:59:18 浏览: 249
1. future_lapply():
```
future_lapply(X, FUN, ..., future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- X: 应用函数的列表
- FUN: 应用的函数
- ...: FUN函数的其他参数
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数将 FUN 应用到列表 X 中的每个元素上,返回一个列表。使用 future.seed 参数可以控制随机数生成器的种子,使用 future.scheduling 参数可以选择任务调度策略,包括顺序执行(sequential)、并行执行(multisession)和分布式执行(multicore)。使用 future.lazy 参数可以选择是否惰性计算。
2. future_sapply():
```
future_sapply(X, FUN, ..., future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- X: 应用函数的列表
- FUN: 应用的函数
- ...: FUN函数的其他参数
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数与 future_lapply() 类似,不同的是它返回一个向量或矩阵,而不是列表。
3. future_vapply():
```
future_vapply(X, FUN, FUN.VALUE, ..., future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- X: 应用函数的列表
- FUN: 应用的函数
- FUN.VALUE: 返回结果的类型
- ...: FUN函数的其他参数
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数与 future_sapply() 类似,不同的是它需要指定返回结果的类型。
4. future_mapply():
```
future_mapply(FUN, ..., MoreArgs = NULL, SIMPLIFY = TRUE, USE.NAMES = TRUE, future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- FUN: 应用的函数
- ...: 函数的参数列表
- MoreArgs: 其他参数
- SIMPLIFY: 是否简化结果
- USE.NAMES: 是否使用参数名称
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数将 FUN 应用到多个列表中对应元素上,并返回一个列表。使用 MoreArgs 参数可以传递其他参数,使用 SIMPLIFY 参数可以控制是否简化结果,使用 USE.NAMES 参数可以控制是否使用参数名称。
5. future_apply():
```
future_apply(X, MARGIN, FUN, ..., future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- X: 应用函数的矩阵或数组
- MARGIN: 应用函数的维度
- FUN: 应用的函数
- ...: FUN函数的其他参数
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数将 FUN 应用到矩阵或数组的每一行或列上,并返回一个向量或矩阵。使用 MARGIN 参数可以指定应用函数的维度。
6. future_eapply():
```
future_eapply(env, FUN, ..., future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- env: 应用函数的环境
- FUN: 应用的函数
- ...: FUN函数的其他参数
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数将 FUN 应用到环境中的每个元素上,并返回一个列表。
7. future_rapply():
```
future_rapply(X, FUN, ..., classes = NULL, how = c("replace", "list", "unlist"), future.seed = NULL, future.scheduling = NULL, future.lazy = NULL)
```
- X: 应用函数的列表或矩阵
- FUN: 应用的函数
- ...: FUN函数的其他参数
- classes: 应用函数的类别
- how: 返回结果的类型
- future.seed: 随机数种子
- future.scheduling: 任务调度策略
- future.lazy: 是否惰性计算
这个函数与 future_lapply() 类似,不同的是它可以递归地应用到嵌套列表或矩阵中的每个元素上。使用 classes 参数可以指定应用函数的类别,使用 how 参数可以控制返回结果的类型。
阅读全文