gpt4 book ai didi

r - 在 R 中将函数和代码从一个文件导出和导入到另一个文件

转载 作者:行者123 更新时间:2023-12-02 18:15:29 25 4
gpt4 key购买 nike

我刚刚开始使用 R,这个问题可能之前已经得到了回答。在 Javascript 和 Python 等其他语言中,可以将代码拆分为多个文件,然后在项目中从一个文件导出函数并将其导入到另一个文件中。

Python 中的示例是

从一个文件导出:

def CountWords(words):
if words is not None:
NumberOfWords = [Eachword.count(' ') + 1 for Eachword in words]
return NumberOfWords

导入另一个文件:

from wordcounter import CountWords

# use the CountWords function here

R 中与此等效的是什么?

最佳答案

从技术上讲,您可以:

foo <- function() {
message("Hello")
}
dput(foo, "foo.R")

foo2 <- source("foo.R")$value
foo2()
#> Hello

reprex package 于 2022 年 3 月 28 日创建(v2.0.1)

但我从未见过有人这样做,而且有些简陋的语法很好地表明我在这里编写的内容并不是为了保存加载函数。您还可以使用saveRDS(foo, "foo.rds")保存函数和 readRDS("foo.rds")阅读它。请注意,在这两种情况下,函数的名称都不会存储,因此您需要使用 foo3 <- readRDS("foo.rds") 对其进行分配。 .

我认为您通常会做的是创建一个名为(例如)“custom_functions.R”的文件来存储项目的所有函数,然后使用 source("custom_functions.R")在每个脚本的开头加载它们。

自定义函数.R:

# function to do stuff
foo <- function() {
message("Hello")
}

你的正常脚本:

source("custom_functions.R")
foo()
#> Hello

在这种情况下,您不需要指定名称。

R 还使创建个人包变得非常简单,这是另一个不错的选择(例如,参见 https://r-pkgs.org/ )。

关于r - 在 R 中将函数和代码从一个文件导出和导入到另一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71648537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com