【发布时间】:2013-08-06 21:15:28
【问题描述】:
我正在编写一个自定义print.xx 函数来显示一堆漂亮的表格数据。
列宽是 11 个字符,所以我这样做:
> format(1234.567,width=11,digits=7)
[1] " 1234.567"
> format(1234.56789,width=11,digits=7)
[1] " 1234.568"
到目前为止一切顺利。当我有一个非常大/小的数字并且科学记数法出现时,问题就来了:
> format(1234.56789e10,width=11,digits=7)
[1] "1.234568e+13"
> format(1234.56789e-10,width=11,digits=7)
[1] "1.234568e-07"
它应该使用科学计数法,好的,但我需要它坚持 11 个字符的宽度。我查过scientific 和scipen 参数,但它仍然超出了11 个字符的限制。一个选项可能是检查是否生成了科学记数法,如果是,则减少 digits 参数,但对我来说看起来很俗气。
如何强制它给我一个固定长度的字符串,不管数字是否为科学计数法?
【问题讨论】:
标签: r formatting pretty-print