Jas*_*ase 10 printing numbers r scientific-notation digits
我想要实现的是让所有打印的数字以最大7数字显示.以下是我要打印的示例:
0.000000(相对于实际数字0.000000000029481 ......)
0.299180(相对于实际数字是0.299180291884922 ......)
通过使用options(scipen=99999)和,我已经成功使用了后面的数字options(digits=6).但是,前一个示例将始终打印大量的零后跟五个非零数字.如何阻止这种情况发生并达到我想要的效果?我也不想要科学记谱法.
我希望这适用于每个上下文中的所有打印数字.例如,如果我有一些矩阵,调用它A,我打印这个矩阵,我希望每个元素只有6-7位数.我希望每个上下文中的每个打印都能自动生成; 就像使用一样,options(digits=6)并options(scipen=99999)使其适用于每个上下文.
Rob*_*der 10
您可以为要打印的类型定义新的打印方法.例如,如果您的所有数字都是双打,则可以创建
print.double=function(x){sprintf("%.6f", x)}
Run Code Online (Sandbox Code Playgroud)
现在,当您打印双精度(或双精度矢量)时,print.double()将调用该函数而不是print.default().
您可能必须创建类似的功能print.integer(),print.complex()等等,具体取决于您需要打印的类型.
要返回默认打印方法,只需删除该功能即可print.double().