我目前无法使用knitr
实现所需的数字舍入。问题发生在最终舍入数字上以零结尾的数字。一个例子是14.04,我希望在小数点后1位舍入到14.0。问题是knitr
和latex
作为输出给出14而没有0作为小数位。
我会假设存在某种尾随零选项,但我找不到它。有任何想法吗?贝娄是这个问题的一个简短的工作范例。
\documentclass[12pt]{article}
\begin{document}
<<>>=
library(knitr)
options(digits=1)
@
Full number = 14.0417
Number of issue \Sexpr{14.041783}
Should appear as 14.0
\end{document}
编辑:在看第一个答案时(感谢Ben的快速回复),我意识到我在这里遇到的另一个问题。虽然将数字格式化为字符串的解决方案,解决主要问题,但当它出现在“大”数字时,它们不会解决相同的问题,这些数字将使用科学记数法进行格式化。
我将举一个证明这一点的例子:说数字是100,400,000。使用options(digits=2)
的结果输出变为10^8
,我更喜欢1.04 x 10^8
。下面的例子。
\documentclass[12pt]{article}
\begin{document}
<<>>=
library(knitr)
options(digits=2)
@
Number 100,400,000
\Sexpr{100400000}
\end{document}
答案 0 :(得分:2)
我认为this会回答:使用sprintf()
。
\documentclass[12pt]{article}
\begin{document}
<<>>=
library(knitr)
options(digits=1)
x <- 14.0417
@
Full number = \Sexpr{x}
Number of issue \Sexpr{sprintf("%.1f",x)}
\end{document}