我以前lapply
与下面的参数运行的函数100倍:无法找到函数在工作区
lapply(1:100, myfunc)
,但我得到这个错误信息:
error in match.fun(FUN) : object 'myfunc' not found
我用list.files()
检查,如果函数在工作目录中,它在那里。所以我不知道我为什么得到这个消息。
我以前lapply
与下面的参数运行的函数100倍:无法找到函数在工作区
lapply(1:100, myfunc)
,但我得到这个错误信息:
error in match.fun(FUN) : object 'myfunc' not found
我用list.files()
检查,如果函数在工作目录中,它在那里。所以我不知道我为什么得到这个消息。
这听起来有些模糊,就像你期待R的行为像Matlab一样(基于我对Matlab的朦胧记忆)。
仅仅因为包含函数的文件在你的工作目录中并不意味着R是否知道它。您需要source()
包含此功能的文件,然后使用ls()
验证您的工作区中是否存在该功能。
因此,例如,如果包含该函数的文件是"foo/bar/myfile.R"
然后我会运行:
source("foo/bar/myfile.R")
和验证功能是我工作区运行ls()
。
'list.files'显示你的操作系统中有什么。你希望函数在'R'中。 –
当我运行“lapply”时,该函数应该在工作目录中。是对的吗? – SaZa
不能;)看看@乔兰的答案。他告诉你如何去做。 –