我目前正在使用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/