【发布时间】:2018-05-30 13:05:10
【问题描述】:
在使用 rnotebook 时,通过扫帚获取线性回归模型的输出时出现以下错误。
这是我遇到的一个虚拟示例:
N <- 100
a <- rnorm(N)
b <- a + rnorm(N)
df1 <- data.frame(a, b)
lModel <- lm(b ~ a, df1)
summary(lModel)
如果我想得到 tidy(lModel) 的输出,我会得到错误:
临时文件中的错误(pattern = "_rs_rdf_", tmpdir = outputFolder, fileext = ".rdf"):临时名称太长
问题是我不久前使用了扫帚的tidy() 函数并得到了输出。我想知道可能是什么问题,以及如何解决。
这是上述错误的回溯:
Error in tempfile(pattern = "_rs_rdf_", tmpdir = outputFolder, fileext = ".rdf") : temporary name too long
4.
tempfile(pattern = "_rs_rdf_", tmpdir = outputFolder, fileext = ".rdf")
3.
overridePrint(o$x, o$options, o$className, o$nRow, o$nCol)
2.
print.data.frame(x)
1.
function (x, ...) UseMethod("print")(x)
提前非常感谢。
【问题讨论】:
-
澄清一下,在使用 tidy() 函数之前,该包已从库中调用。
-
@marc_s 非常感谢您对此问题的更正。
-
您使用的是什么操作系统?我在目录嵌套太多级别的 Windows 上看到过这样的错误。 Windows API 有一个很短的maximum path length of 260 chars。在 Unix 系统上,这要长得多,但文件名的最大长度为 255 个字符。
-
感谢@dshkol 的评论。我正在使用 Windows 10 64 位。我必须设置其他配置吗?我很好奇为什么rnotebooks(或rmarkdown)会出现这种行为。我将代码放在 rnotebook 之外(键入并直接在 R 控制台中运行),它工作正常。
-
只需调整您的工作目录,或您保存临时文件的结构。它要么嵌套太深,要么使用的名称太长,因此路径超出了 Windows 的路径限制。