我目前正在使用printCoefmat打印出矩阵,并希望对数字应用某些格式。

当数字的指数大于3时,我想强制使用科学计数法。
我不太清楚scipen的工作原理,有人知道我该怎么做吗?

最佳答案

只需输入一个大数字即可使R显示不科学的符号。

options( scipen = 20 )

如果那还不够,请增加数字...

科学处罚是如何工作的?

这很令人困惑,但是惩罚适用于科学记数法版本,因为R中的内容是查看打印特定字符串需要多少个字符。它将scipen惩罚值添加到科学计数法的字符数中,如果仍然少于打印实际数字所需的字符数,则它将打印科学计数,反之亦然。我希望这个例子可以说明这一点:
options( scipen = 0 )
options( digits = 6 )
>1e5
#[1] 1e+05    ----> 5 characters in scientific, vs. 6 for '100000' in normal
>1e4
#[1] 10000    ----> 5 characters in normal, vs. 5 for '1e+04' in scientific
options(scipen = 1 )
>1e5
#[1] 100000    ----> 6 characters in normal, vs. 5 + 1 for '1e+05' + scipen penalty in scientific

关于r - 在R中使用科学计数法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16356530/

10-12 20:49