在 R 中读取文件而不更改工作目录
Posted
技术标签:
【中文标题】在 R 中读取文件而不更改工作目录【英文标题】:Read a file in R without changing the working directory 【发布时间】:2021-10-11 12:07:58 【问题描述】:运行我的 R 程序的其他人如何在不更改 setwd() 中的工作目录的情况下读取我的 R 代码中使用的文件(例如:csv)?
【问题讨论】:
数据从何而来?如果您想查找与您的 R 脚本相关的文件,可以查看here package。或者你在使用 RStudio?如果是这样,请考虑使用 RStudio 项目。阅读更多关于project oriented workflows 你在 Windows 上吗? 【参考方案1】:read.csv
有一个 file
参数,如果我要引用关于 file
的内置 R
帮助:
如果不包含绝对路径,则文件名是相对于 当前工作目录,
getwd()
。
因此,在 file
参数中提供文件的绝对路径可以解决此问题。
在 Windows 中
假设您的文件名是test.csv
,并且它位于D:\files\test_folder
(您可以从Windows 的属性中获取任何文件的位置)
为了读取这个文件,你运行:
df<-read.csv('D:\\files\\test_folder\\test.csv')
或
df<-read.csv('D:/files/test_folder/test.csv')
推荐阅读:Why \\
instead of \
和Paths in programming languages
没有在 Linux 中使用过R
,但也许Getting a file path in Linux 可能会有所帮助
从网上阅读
只需在file
属性中输入数据集的网址即可。试试:
df<-read.csv('https://raw.githubusercontent.com/AdiPersonalWorks/Random/master/student_scores%20-%20student_scores.csv')
注意:此链接包含 25 名学生及其学习时间和分数的列表。我自己将这个数据集用于我早期的任务之一,它非常安全
【讨论】:
【参考方案2】:我建议您在代码中使用 here
包中的 here()
函数,如下所示:
library(here)
Data1 <- read_csv(here("test_data.csv"))
【讨论】:
以上是关于在 R 中读取文件而不更改工作目录的主要内容,如果未能解决你的问题,请参考以下文章