2013-07-18 3 views
2
> x <- 1.00042589212565 
> x 
[1] 1.000426 

Если бы я хотел напечатать точное значение x, как бы я это сделал?Отобразить точное значение переменной в R

Извините, если это глупый вопрос. Я пробовал Googling для «R» и «точного» или «круглого», но все, что я получаю, это статьи о том, как округлить.

Спасибо заранее!

+0

Если это не целое число, то вы не получите точное значение, просто приблизительное. См. Http://cran.r-project.org/doc/FAQ/R-FAQ.html#Why-doesn_0027t-R-think-these-numbers-are-equal_003f –

+0

* точно * Единственно истинно точное значение - это 8 -байты значения мантиссы/показателя, закодированного с плавающей запятой. – Spacedman

ответ

10

решения Во всем мире в течение всего сеанса

options(digits=16) 
> x 
[1] 1.00042589212565 

или локально только для й:

sprintf("%.16f", x) 
[1] "1.0004258921256499" 
+3

Мне нравится второй, который показывает, что «точный» относительный. – Roland

7
print(x, digits=15) 

или

format(x, digits=15) 

или

sprintf("%.14f", x) 
Смежные вопросы