Suppress reader parse problems in r

Hanjo Odendaal picture Hanjo Odendaal · May 26, 2016 · Viewed 8.9k times · Source

I am currently reading in a file using the package readr. The idea is to use read_delim to read in row for row to find the maximum columns in my unstructured data file. The code outputs that there are parsing problems. I know of these and will deal with column type after import. Is there a way to turn off the problems() as the usual options(warn) is not working

i=1
max_col <- 0
options(warn = -1)
while(i != "stop")
{
  n_col<- ncol(read_delim("file.txt", n_max = 1, skip = i, delim="\t"))
  if(n_col > max_col) {
    max_col <- n_col
    print(max_col)
  }
  i <- i+1
  if(n_col==0) i<-"stop"
}
options(warn = 0) 

The output to console that I am trying to suppress is the following:

.See problems(...) for more details.
Warning: 11 parsing failures.
row      col   expected  actual
  1 1####4 valid date 1###8

Answer

Mehrad Mahmoudian picture Mehrad Mahmoudian · Dec 22, 2016

In R you can suppress three main annoying things while using packages:

  1. messages suppressMessages(YOUR_FUNCTION)
  2. warnings suppressWarnings(YOUR_FUNCTION)
  3. package startup messages suppressPackageStartupMessages(YOUR_FUNCTION)

So in your case imho also let the package developer knows so that he/she can for example add a verbose argument in the function.