R Sweave:prop.table xtable 中的数字

R Sweave: digits number in xtable of prop.table

我正在 R Sweave 上制作 xtableFtable,但找不到使用此代码抑制数字的方法。我在做什么假的?我读过如果您的值不是数字而是因子或字符,但 prop.table 使它们成为非数字,则可能会发生这种情况?我迷路了...

library(xtable)
a <- ftable(prop.table(table(mtcars$mpg, mtcars$hp), margin=2)*100)
b <- xtableFtable(a, method = "compact", digits = 0)
print.xtableFtable(b, rotate.colnames = TRUE)

我也已经尝试过 digits=c(0,0,0,0...)

您可以使用 options(digits) 来控制打印的位数。尝试将 options(digits = 4) 作为代码的第一行(将 4 更改为 122 之间的任何值)。有关详细信息,请参阅 ?options

或在打印前四舍五入这些值

a = round(ftable(prop.table(table(mtcars$mpg, mtcars$hp), margin=2)*100), 2)
b = xtableFtable(a, method = "compact")
print.xtableFtable(b, rotate.colnames = TRUE)

xtableFtable 的“digits”参数似乎没有实现(在我的版本中,它是 1.8.3),因为在玩了半小时之后似乎没有任何区别。

函数文档中对此有提示:

It is not recommended that users change the values of align, digits or align. First of all, alternative values have not been tested. Secondly, it is most likely that to determine appropriate values for these arguments, users will have to investigate the code for xtableFtable and/or print.xtableFtable.

它可能只是从 xtable 函数(xtableFtable 肯定基于该函数)作为维护者尚未完成的 TODO 继承过来的。