R错误:应用于非向量的names()

Man*_*edo 21 runtime-error r names

我有一大块代码只在我第一次运行时产生错误.奇怪的是,如果我第二次运行它我没有错误(疯狂定义?).此外,错误不会始终显示在同一位置,我的意思是,如果我添加几行注释,则会在注释后打印错误消息,而不是在特定指令之后.

我无法提供可重现的示例,因为我不知道错误的确切位置.错误如下:

Error in names(frame)[names(frame) == "x"] <- name : 
  names() applied to a non-vector
Run Code Online (Sandbox Code Playgroud)

我应该在我的代码中指定我没有 - 至少显式 - 一个names()函数.

Jos*_*rón 48

这是一个棘手的错误.我能够找到原因,似乎R有一个与缓存函数同名的对象.如果使用诸如RStudio之类的IDE(View(df)的选项卡),则最有可能.除非关闭选项卡,否则即使运行没有代码的函数也会出现此错误.同样,如果选项卡未关闭,甚至不删除所有对象或进行垃圾收集将解决它.标签关闭后,错误将消失.