title: Losing precision in dataframe while changing column datatype
body: <p>I want to change the datatype of columns for a dataframe however the numeric columns drop the trailing zeros.</p>
  
  <p>Take example of mtcars:</p>
  
  <pre><code>mtcars
  
  
  mpg                   cyl  disp  hp  drat wt  qsec  vs     am gear carb
  Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
  Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
  Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
  Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
  </code></pre>
  
  <p>when I change the datatypes of columns:</p>
  
  <pre><code>mtcars[, ] &lt;- lapply(mtcars[, ], as.character)
  
  mpg                   cyl  disp  hp  drat wt  qsec  vs     am gear carb
  Mazda RX4             21   6     160 110  3.9 2.62  16.46  0  1    4    4
  Mazda RX4 Wag         21   6     160 110  3.9 2.875 17.02  0  1    4    4
  ...
  </code></pre>
  
  <p>I was expecting the trailing 0 in <code>disp</code> to be preserved.</p>