Liu Liu - 4 months ago 67
Markdown Question

read.table() and read.csv both Error in Rmd

I want to read a txt in Rmd

---
title: "Untitled"
output: html_document
---
```{r}
country <- read.table("country.txt")
country
```


It show error:

processing file: Preview-2878539db5c7.Rmd

Quitting from lines 6-8 (Preview-2878539db5c7.Rmd)
Error in file(file, "rt") : cannot open the connection
Calls: <Anonymous> ... withCallingHandlers -> withVisible -> eval -> eval -> read.table - > file
Execution halted


But I can run code in R console successfully

> country <- read.table("country.txt")

> country
production1 education1 fir1 inflation1 lq1 nonstatein1 patent1 tax1 trade1
2001 52920.47 132649.4 2.339263 0.700000 NA 19562.16 109313 23783.07 23783.07
2002 65876.57 144090.3 2.500826 -0.800000 NA 24727.30 131972 27479.61 27479.61
2003 89227.20 156280.4 2.691411 1.168900 NA 34044.45 164611 31537.50 31537.50
2004 92656.06 167683.7 2.615238 3.878600 NA 45613.10 177364 36179.87 36179.87
2005 167115.37 171379.7 2.617289 1.810000 NA 77525.52 231570 42008.37 42008.37
2006 218827.79 181084.6 2.578939 1.467800 NA 77441.52 282315 54866.43 54866.43
2007 286691.88 192677.9 2.439093 4.772700 NA 99032.26 333059 66453.31 66453.31
2008 364955.86 202542.8 2.440807 5.864570 NA 124621.23 418524 74104.80 74104.80
2009 398476.09 213539.2 3.783803 -0.693900 NA 153670.18 537957 65501.69 65501.69
2010 511364.93 254805.1 3.806066 3.322200 NA 194286.94 700304 81966.57 81966.57
2011 624657.55 279690.7 2.862413 5.393433 NA 229513.81 997132 91118.75 91118.75


The file is existing in wd

> file.exists("country.txt")
[1] TRUE


I also try to use read.csv()
but it show similar error:

processing file: Preview-28786aad2e0.Rmd

Quitting from lines 6-8 (Preview-28786aad2e0.Rmd)
Error in file(file, "rt") : cannot open the connection
Calls: <Anonymous> ... withVisible -> eval -> eval -> read.csv -> read.table -> file
Execution halted

Answer

The short answer is:

KNOW THY getwd()

Do not confuse the working directory of your current R console with the working directory of your R Markdown document (which is the directory of this R Markdown document). When in doubt, print out getwd() where you want to know your working directory (e.g. in *.Rmd). Note R Markdown documents are compiled in separate R sessions to enhance reproducibility, so you current R console has nothing to do with the compilation of the R Markdown documents.

Comments