我有一个我想在R中打开的excel文件。在将excel文件保存为csv文件或文本文件后,我尝试了这两个命令。
read.table()或read.csv()
我认为问题的一部分是文件所在的位置。我把它保存在桌面上。我在这里缺少什么?
这是R输出
In file(file, "rt") :
cannot open file 'Rtrial.csv': No such file or directory
> help.search("read.csv")
> read.csv("Rtrial.csv")
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") :
cannot open file 'Rtrial.csv': No such file or directory
> read.table("tab")
答案 0 :(得分:34)
要抛出另一个选项,为什么不使用setwd('C:\John\Desktop')
将工作目录(最好通过脚本)设置到桌面,然后使用文件名读取文件
答案 1 :(得分:15)
尝试
f <- file.choose()
以交互方式选择文件并将名称保存在f
。
然后在保存的文件名
上运行read.csv
d <- read.csv(f)
答案 2 :(得分:12)
声音就像你刚刚遇到路径问题一样。包含完整路径,如果您使用反斜杠,则需要对其进行转义:"C:\\folder\\folder\\Desktop\\file.csv"
或"C:/folder/folder/Desktop/file.csv"
。
myfile = read.csv("C:/folder/folder/Desktop/file.csv") # or read.table()
避免使用文件名中的空格和符号也是明智的,尽管我相当确定空格是可以的。
答案 3 :(得分:6)
这是一种方法。它使用R的能力构建基于平台的文件路径,因此可以在Mac OS和Windows上运行。此外,您不需要将xls文件转换为csv,因为有许多R包可以帮助您直接读取xls(例如gdata包)。
# get user's home directory
home = setwd(Sys.getenv("HOME"));
# construct path to file
fpath = file.path(home, "Desktop", "RTrial.xls");
# load gdata library to read xls files
library(gdata);
# read xls file
Rtrial = read.xls(fpath);
让我知道这是否有效。
答案 4 :(得分:6)
我必须将Maiasaura和Svun的答案结合起来才能使其工作:使用setwd并转义所有斜杠和空格。
setwd('C:\\Users\\firstname\ lastname\\Desktop\\folder1\\folder2\\folder3')
data = read.csv("file.csv")
data
这解决了我的问题。
答案 5 :(得分:4)
read.csv("c:\\users\\JoeUser\\Desktop\\JoesData.csv")
答案 6 :(得分:1)
另一种阅读Excel的方法,包括新格式xlsx,可以是包speedR(https://r-forge.r-project.org/projects/speedr/)。它是一个交互式可视数据导入程序。除了导入,您还可以从R工作区过滤(子集)现有对象。
答案 7 :(得分:1)
当您将excel文件移动到目标文件而不是r文件所在的位置时,或者将r文件移动到目标文件而不是excel文件所在的位置时,我都经历了此错误。
良好做法:
您还可以在 Environment Block 中找到 import Dataset选项,只需单击此处并安装所需的软件包即可;下次使用此选项读取数据集。您将不会再收到此错误。 我也很感谢上面提供的答案。
答案 8 :(得分:0)
MAC OS它也发生在我身上。我只是从R工具栏MISC中选择,然后选择Change Working Directory。我能够选择保存.csv文件的目录。当我回到命令行并输入getwd()时,完整目录已更新并且正确,read.csv函数最终起作用。
答案 9 :(得分:0)
我遇到了同样的问题,当我在文件资源管理器上检查文件的属性时,它会显示下一条消息:
“安全性:此文件来自另一台计算机,可能会被阻止以帮助保护此计算机”
您单击“取消阻止”按钮并且...您可以从R访问该文件而没有任何问题,只需使用read.csv()函数并从指定为您的工作目录的目录中,即使不是与您要访问的文件目录相同。
答案 10 :(得分:0)
我刚遇到这个问题,我首先切换到另一个目录,然后切换回来,问题得到解决。
答案 11 :(得分:0)
我的问题很简单,工作目录不是文件运行时打印的“Source”目录。要解决此问题,您可以使用getwd()
和setwd()
来获取相对链接,或者在打开csv时使用完整路径。
print(getwd()) # Where does the code think it is?
setwd("~/Documents") # Where do I want my code to be?
dat = read.csv("~/Documents/Data Visualization/expDataAnalysis/one/ac1_survey.csv") #just make it work!
答案 12 :(得分:0)
这对我有用,从根访问数据。使用双斜杠访问地址。
dataset = read.csv('C:\\Users\\Desktop\\Machine Learning\\Data.csv')
答案 13 :(得分:0)
请检查文件名是否具有扩展名,例如:
abc.csv
如果要删除.csv
扩展名。
将wd
设置为包含文件(~)
data<-read.csv("abc.csv")
您的数据已被读取为数据对象
答案 14 :(得分:0)
在我的情况下,此问题是由拼写错误引起的,路径中的小写字母“ c:”而不是大写字母“ C:”。我纠正了拼写,问题消失了。