R options(digits=2) 函数改变总位数的格式。寻找改变小数点后数字的方法
Posted
技术标签:
【中文标题】R options(digits=2) 函数改变总位数的格式。寻找改变小数点后数字的方法【英文标题】:R options(digits=2) function changes the total number of digits’ format. Looking for a way to change the digits after decimal point 【发布时间】:2016-07-23 02:40:47 【问题描述】:options(digits=2)
改变了未来的总位数:
> options(digits=3)
> 1.234
[1] 1.23
> 12.234
[1] 12.2
> 123.234
[1] 123
有没有什么办法可以改变数字格式,使它改变小数点后的数字,所以当 digits_after_decimal=3 数字 1.12345 变成 1.123 和 123.12345 变成 123.123?
我知道圆形或格式的功能;但是,它们只是根据参数返回结果,而 options(digits=3) 会更改所有格式。
【问题讨论】:
如果你的目标是打印,你可以试试cat(formatC(c(1.23,1.23456,123.1234),format='f',digits=3))
【参考方案1】:
在 R 中改进“报告”选项的请求由来已久,但从未遇到过对 base-R 的修改。无法更改 print.default
函数的行为,这是您正在使用(不知道)通过翻转选项开关进行舍入的功能。 (您可以使用methods
来检查是否没有print.numeric
。)所以我的建议是学习在您想要四舍五入的项目上使用round
、sprintf
或formatC
。将有一个额外的“障碍”,因为 sprintf 或 formatC 结果将是一个字符值,并且它将用引号显示,除非您使用cat
进行打印,或者将quote=FALSE
设置为print
调用。 @digEmAll 用他的建议说明了其中两个问题。您可能希望查看更多“完整”策略来获取各种“表格”功能和包提供的报告格式。您可以通过使用“table”和“tabular”搜索可用的包来查看大量此类。我有经验的包括htmlTables
、tabular
和xtable
,但还有很多其他的,这不包括knitr
和Sweave
选项。
【讨论】:
以上是关于R options(digits=2) 函数改变总位数的格式。寻找改变小数点后数字的方法的主要内容,如果未能解决你的问题,请参考以下文章