Read a file in R without changing the working directory

3.7k Views Asked by At

How can others who run my R program read a file(eg: csv) used in my R code without having to change the working directory in setwd()?

2

There are 2 best solutions below

0
Daniel James On BEST ANSWER

I will suggest you use the here() function in the here package in your code like this:

library(here)
Data1 <- read_csv(here("test_data.csv"))
0
DeBARtha On

read.csv has a file argument and if I were to quote from the inbuilt R help about file:

If it does not contain an absolute path, the file name is relative to the current working directory, getwd().

So, providing the absolute path of the file inside the file argument solves this problem.


In Windows

Suppose your file name is test.csv and it's located in D:\files\test_folder (you can get the location of any file from its properties in Windows)

For reading this file you run:

df<-read.csv('D:\\files\\test_folder\\test.csv')

or

df<-read.csv('D:/files/test_folder/test.csv')

Suggested reading: Why \\ instead of \ and Paths in programming languages

Haven't used R in Linux but maybe Getting a file path in Linux might help


Read from web

Just type in the web address of the dataset in the file attribute. Try:

df<-read.csv('https://raw.githubusercontent.com/AdiPersonalWorks/Random/master/student_scores%20-%20student_scores.csv')

Note: This link contains a list of 25 students with their study hours and marks. I myself used this dataset for one of my earlier tasks and its perfectly safe