Есть ли тип данных «Десятичный» в R?
Я читаю данные, хранящиеся в форматеDECIMAL
из MySQL-таблицы. Я хочу сделать расчеты по этим числам в R.
Я использовал, чтобы привести их к представлению чисел с помощьюas.numeric()
, но в документации сказано:
число идентично двойному (и реальному).
Но есть ли также тип данных Decimal в R? (Тип данных без ошибок округления, ...)
Вот простой пример для проблемы с ошибками округления:
numbersStrings = c("0.1", "0.9")
numbersNumeric = as.numeric(numbersStrings)
numbersMirror = c(numbersNumeric, 1-numbersNumeric)
str(numbersMirror)
numbersMirror
unique(numbersMirror) # has two times 0.1 ...
sprintf("%.25f", numbersMirror)
sprintf("%.25f", unique(numbersMirror)) # ... because there was a rounding error