没有可见的全局函数 definition/no 项目中全局变量的可见绑定?
No visible global function definition/no visible binding for global variable in a project?
我在 VS Code 中使用 R,使用 R Extension. I do almost all of my project work using targets,这意味着我的包导入和函数通常在单独的文件中。
一个简单的例子是在一个看起来像
的文件夹中工作
project
│ packages.R
│ README.md
│ _targets.R
│
├───R
│ functions.R
我遇到的问题是,我从 {lintr} 收到有关从 packages.R
(或 tar_option_set(packages=c(...))
)加载的函数(特别是特殊函数)的全局函数定义的警告。我有一个类似的问题,lintr 无法识别列名,而是将它们视为缺失变量。例如,functions.R
中的函数可能如下所示:
如果我正在开发一个包,解决方案(如 here 和其他地方所发布的那样)是将函数包含在 NAMESPACE 中。但我不觉得每个快速分析都需要一个包。我还能如何避免这些警告?在 /.lintr
中排除这些 linter 的唯一其他选择是什么?
您可以在您的项目中禁用对象使用 linter。示例:https://github.com/ropensci/targets/blob/8c42336a228874889c9ee99dd154c567b4eee91a/.lintr#L4. More on linters: https://github.com/r-lib/lintr#available-linters
我在 VS Code 中使用 R,使用 R Extension. I do almost all of my project work using targets,这意味着我的包导入和函数通常在单独的文件中。
一个简单的例子是在一个看起来像
的文件夹中工作project
│ packages.R
│ README.md
│ _targets.R
│
├───R
│ functions.R
我遇到的问题是,我从 {lintr} 收到有关从 packages.R
(或 tar_option_set(packages=c(...))
)加载的函数(特别是特殊函数)的全局函数定义的警告。我有一个类似的问题,lintr 无法识别列名,而是将它们视为缺失变量。例如,functions.R
中的函数可能如下所示:
如果我正在开发一个包,解决方案(如 here 和其他地方所发布的那样)是将函数包含在 NAMESPACE 中。但我不觉得每个快速分析都需要一个包。我还能如何避免这些警告?在 /.lintr
中排除这些 linter 的唯一其他选择是什么?
您可以在您的项目中禁用对象使用 linter。示例:https://github.com/ropensci/targets/blob/8c42336a228874889c9ee99dd154c567b4eee91a/.lintr#L4. More on linters: https://github.com/r-lib/lintr#available-linters