For some reason, when I convert a character column of numbers in scientific notation, the decimals aren't preserved.
> str(output)
'data.frame': 213950 obs. of 2 variables:
$ ColA : chr ".3370E+03" ".3375E+03" ".3380E+03" ".3385E+03" ...
$ ColB : chr ".4942E+00" ".5295E+00" ".5682E+00" ".6091E+00" ...
> output$ColA = as.numeric(output$ColA)
> str(output)
'data.frame': 213950 obs. of 2 variables:
$ ColA : num 337 338 338 338 339 ...
$ ColB : chr ".4942E+00" ".5295E+00" ".5682E+00" ".6091E+00" ...
I would expect it to read:
$ ColA : num 337 337.5 338 338.5 ...
I tried the solution from this SO question, but no luck:
> options(digits=9)
> str(output)
'data.frame': 213950 obs. of 2 variables:
$ ColA : num 337 338 338 338 339 ...
$ ColB : chr ".4942E+00" ".5295E+00" ".5682E+00" ".6091E+00" ...
What's going on?
You can turn off scientific notation for numbers using the option below;
options(scipen = 999)
That would make all the numbers to appear as decimals.
If you want to revert it back to the default, use
options(scipen = 0)
See getOption("scipen")
for more options.