设置打印的默认小数位数 [英] Setting default number of decimal places for printing

查看:91
本文介绍了设置打印的默认小数位数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在运行代码以生成输出,我希望所有输出以小数点后一位来打印。但是,代码使用的是我通常使用的函数,我不想在这些函数中指定打印输出是四舍五入的。

I am running code to produce outputs where I want all the outputs to be printed with 1 decimal place. However the code uses functions which I use generally and I don't want to specify within these that the printed output is rounded.

此问题的答案格式化R中的小数位建议使用 options(digits = 2) round(x,digits = 2)

The answers to this question Formatting Decimal places in R suggest using options(digits=2) or round(x, digits=2).

第一个选项是常规设置非常适合将 1.234 舍入为 1.2 ,但是会打印 12.345 12

The first option is a general setting which is great for rounding 1.234 to 1.2 but would print 12.345 as 12

第二个选项如果放在函数中会起作用,但我不想碰它们。一般如何设置?

The second option would work if put within the function but I don't want to touch them. How to set this generally?

推荐答案

您可以执行以下操作:

print <- function(x, ...) {
    if (is.numeric(x)) base::print(round(x, digits=2), ...) 
    else base::print(x, ...)
}

这篇关于设置打印的默认小数位数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆