1

关于 knitr 中打印的位数,我遇到了一些麻烦。options('digits')该数字与设置 [ ]不对应。我知道这是大约一年前的问题,但已经解决(https://github.com/yihui/knitr/issues/120)。

```{r}
packageVersion("knitr")
options("digits")
a <- 100.101
a
as.character(a)
options(digits=4)
a
options(digits=10)
a
```

这就是我得到的(在两台不同的机器上相同):http ://rpubs.com/markheckmann/6715 。 在此处输入图像描述 这里出了点问题,我不知道。有任何想法吗?

4

2 回答 2

3

我不认为options(digits=10)正在做你所期望的。也许你的意思是

sprintf( "%.10f",101.101)
# [1] "101.1010000000"
于 2013-06-24T10:44:57.530 回答
2

这不是 knitr 问题。这就是 R 显示数字的方式。自己尝试您的代码,无需编织。

a <- 100.101
a
#[1] 100.101
as.character(a)
#[1] "100.101"
options(digits=4)
a
#[1] 100.1
options(digits=10)
a
[1] 100.101

print不会用零填充数字来构成宽度;为此你需要format

format(a, nsmall = 10)
#[1] "100.1010000000"
于 2013-06-24T10:44:29.560 回答