You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用box包一次性加载functions文件夹下所有R函数文件?

一次性加载functions文件夹下所有函数文件的方法

可以通过动态生成调用语句的方式实现,不用重复写box::use:

  1. 先获取functions文件夹下所有.r/.R文件的名称:
# 获取所有R文件,过滤隐藏文件
func_files <- list.files("functions", pattern = "\\.[rR]$", full.names = FALSE)
# 去除文件后缀,得到函数模块名
func_names <- tools::file_path_sans_ext(func_files)
  1. 循环加载每个函数模块:
for (name in func_names) {
  box::use(functions/[name])
}

也可以写成更简洁的一行代码:

lapply(tools::file_path_sans_ext(list.files("functions", pattern = "\\.[rR]$")), \(x) box::use(functions/[x]))

注意事项

  • 确保functions文件夹是box包可识别的模块目录,一般只要文件夹存在且内部是单个函数的R文件即可,无需额外配置文件
  • 若需排除特定文件或子目录,可调整list.files的pattern参数,或添加exclude条件过滤目标文件

内容的提问来源于stack exchange,提问作者Basil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 23:29:51