【问题标题】:Trouble with setwd() in RR中的setwd()问题
【发布时间】:2017-05-08 11:28:48
【问题描述】:

如果这个问题已经得到解答,我深表歉意,我已经查看了许多非常相似的线程,但没有找到解决方案。我是 R 新手,几天前才开始,但我觉得我正在取得不错的进展。我正在尝试从我的本科论文中加载一些旧数据以进行一些处理,但似乎无法更改我的工作目录。

到目前为止,我已经创建了一条路径:

path<- file.path("C:", "Users", "Daniel", "Desktop",
                 "R_Practice", "Thesisdata.csv")

我成功读取了路径指定的文件

read.csv(path, stringsAsFactors = TRUE)

但是,当我尝试使用时

setwd(path)

setwd("C:", "Users", "Daniel", "Desktop",
      "R_Practice", "Thesisdata.csv")

我收到一条错误消息阅读

setwd(x) 中的错误:无法更改工作目录。"

谁能向我解释我做错了什么或指出我正确的方向?我真的不明白为什么它可以使用路径成功读取文件但无法将其设置为工作目录。

【问题讨论】:

  • 您只需将所有这些作为单个字符串:setwd("C/Users/Daniel....)
  • 这是一个文件的路径。您不能将目录更改为文件。
  • 谢谢大家!让它工作

标签: r csv setwd


【解决方案1】:

您的问题是您将 目录 (".../R_Practice") 与 文件 (".../R_Practice/thesisdata.csv") 混淆了。正如@cory 在 cmets 中所说,您不能将工作目录更改为文件。

试试

path <- file.path("C:", "Users", "Daniel", "Desktop", "R_Practice")
setwd(path)
r <- read.csv("Thesisdata.csv")

应该等价于

r <- read.csv(file.path(path,"Thesisdata.csv"))

(当然,前一种方法会将您留在适当的工作目录中,这样您就不必一直在文件名前面加上完整路径)

此外,setwd() 采用单个字符串:setwd("C:",...,"R_Practice") 在任何情况下都不会起作用。

【讨论】:

  • 虽然表达了赞赏,但 StackOverflow 弃用了 using comments to say "thank you";如果此答案有用,您可以投票(如果您有足够的声誉),并且无论如何如果它令人满意地回答了您的问题,我们鼓励您单击复选标记以接受它。
猜你喜欢
  • 2021-08-14
  • 1970-01-01
  • 1970-01-01
  • 2016-02-14
  • 1970-01-01
  • 2020-11-04
  • 2023-04-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多