r - Correct number of decimal places reading in a .csv -
i have .csv 1 of columns contains numbers have 7 decimal places, e.g.: -117.2403266
.
when i'm reading .csv
r ever shows 4 decimal places column, e.g.: -117.2403
. or maybe there when print shows 4 decimal places?
i thought might solved within arguments of read.csv()
function, doesn't decimal places.
read.csv
not truncating or rounding, print.data.frame
function displaying values precision specified in options()
. try:
print(dfrm, digits=10) > dfrm<- data.frame(test=-117.2403266) > print(dfrm) test 1 -117.2403 > print(dfrm, digits=10) test 1 -117.2403266
using format
suggested show precision has not been lost, return character vector, might not suitable assignment when numeric value expected.
edit of 2 yr-old post: topic might bring question regarding how integers can imported when larger .machine$integer.max #[1] 2147483647
, since such can internally stored 'numeric'-abscissa values, maximum 2^52 (or 2^53-1, forget is). when these read in scan
-based function (as 0f read.*
-family), need declare 'numeric' rather 'integer':
> str( scan(text="21474836470", what=integer())) error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, : scan() expected 'an integer', got '21474836470' > str( scan(text="21474836470", what=numeric())) read 1 item num 2.15e+10 > str( read.table(text="21474836470", colclasses="integer")) error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, : scan() expected 'an integer', got '21474836470' > str( read.table(text="21474836470", colclasses="numeric")) 'data.frame': 1 obs. of 1 variable: $ v1: num 2.15e+10
if don't specify type or mode "what", scan
assume numeric()
, succeed.
Comments
Post a Comment