【问题标题】:cannot open connection in an r script that worked previously无法在以前工作的 r 脚本中打开连接
【发布时间】:2013-07-24 01:17:16
【问题描述】:

我在 R 脚本中遇到“无法打开连接”错误。详情如下:

> write.csv(table1.fiveReitWts,file="C:\\Users\\John Broussard\\Dropbox\\evtHandbookProject\\figuresTables\\figure3Data.csv")
Error in file(file, ifelse(append, "a", "w")) : 
  cannot open the connection
In addition: Warning message:
In file(file, ifelse(append, "a", "w")) :
  cannot open file 'C:\Users\John Broussard\Dropbox\evtHandbookProject\figuresTables\figure3Data.csv': No such file or directory
> 

这是一个正在创建的新文件,但该目录存在。我可以看到包含其他文件的目录。我之前成功使用过这段代码,但是突然之间,我无法将文件写入该目录。

我可以提供哪些其他信息来帮助您解决此错误?

【问题讨论】:

  • 顺便说一句,我以前没有见过这个错误,因此很困惑。
  • 你的硬盘满了吗?
  • @gung,我认为双反斜杠 (\\) 可以解决 Windows 中的问题。
  • 想到两件事:1) 一个错字,请仔细检查。另外,如果你在那个目录中运行list.files("C:\\Users\\John Broussard\\Dropbox\\evtHandbookProject\\figuresTables")setwd,你会得到什么? 2) 文件权限:请检查您对该目录有写入权限。
  • 这是运行 list.files() 时的结果 list.files("C:\\Users\\John Broussard\\Dropbox\\evtHandbookProject\\figuresTables") character(0)跨度>

标签: r


【解决方案1】:

您必须为文件路径中的空格使用转义字符。我会尝试这样写整个事情:

C:/Users/John\ Broussard/Dropbox/evtHandbookProject/figuresTables/figure3Data.csv

编辑:

由于这显然不是问题的根源,也许文件是在另一个进程中打开的? 如果您复制文件并尝试打开副本会怎样?

【讨论】:

  • 我可以将文件写入文件路径中有空格的文件夹,而不会在我的机器上转义。我经常这样做,只是测试过。
  • 不,你没有。我可以确认带有空格的路径在 Windows 上可以正常工作,只要它完全包含在 ""'s
  • 好的,抱歉,不知道这在 Win 中是可能的。我作为 Linux/Unix/MacOs 用户的直觉告诉我它不会起作用。
  • 没问题,@SebastianRaschka,我经常遇到。不过,您可能想删除此答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 2016-06-06
  • 1970-01-01
  • 2017-02-26
相关资源
最近更新 更多