title: read.csv blank fields to NA
body: <p>I have tab delimited text file, named 'a.txt'. The D column is empty.</p>
  
  <pre><code> A       B       C    D
  10      20     NaN
  30              40
  40      30      20
  20      NA      20
  </code></pre>
  
  <p>I want to have the dataframe looking and acting exactly as the text file, with a space in the 2nd row and in the 2nd column. </p>
  
  <p>Unfortunately, read.csv is converting all the blanks and NA to "NA". I want to read NA and NaN as characters.</p>
  
  <pre><code> b&lt;- read.csv("a.txt",sep="\t", skip =0, header = TRUE, comment.char = "",check.names = FALSE, quote="", )
  </code></pre>
  
  <p>To summarize: I want to replicate the same values in output file without modifying them:</p>
  
  <ul>
  <li>If there is a blank in input, the output should be blank.</li>
  <li>If the input has NA or Nan, then the output should also have NA or NaN.</li>
  </ul>