R round () правил для .5 - PullRequest
       0

R round () правил для .5

2 голосов
/ 18 февраля 2020

Применяются ли правила округления для .5 также для .05, .005 и c? Я не мог понять, почему округления для 45,445 и 73,445 отличаются.

> round(45.445,2)
[1] 45.45
> round(73.445,2)
[1] 73.44

1 Ответ

4 голосов
/ 18 февраля 2020

Числа double не представлены точно, а round использует представленное число.

sprintf("%.20f", 45.445)
#[1] "45.44500000000000028422"
sprintf("%.20f", 73.445)
#[1] "73.44499999999999317879"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...