我希望我的knitr报告中的所有数字都默认为格式化:
format(num, digits = 2, big.mark = " ", decimal.mark = ",")
将位数默认为2,小数点标记为逗号很简单,我只需要在我的第一个R块中设置options(digits = 2, OutDec = ",")
。但是,我不知道如何以该格式将千位分隔符设置为" "
(或其他任何内容)。我也尝试过调整opts_chunk
,但无法让它发挥作用。
当然,我正在努力避免在每个输出,内联或其他内容中插入format()
。毕竟,更聪明的格式化是让我从Sweave开始编织的一件事。
如何在knitr上设置默认的千位分隔符?
答案 0 :(得分:21)
正如弗兰克所说,设置如下的编织钩子解决了这个问题:
knit_hooks$set(inline = function(x) {
prettyNum(x, big.mark=" ")
})
事实证明,knitr hooks是一种调整knitr上R块输出的好方法。看看http://yihui.name/knitr/hooks非常值得。
来源:https://groups.google.com/forum/#!msg/knitr/CnFwvk1Qn1E/WY-Xhf7Ph3AJ