R - Table 太大而不适合控制台 window?

R - Table too big to fit in console window?

首先免责声明:我是一名 Stata 用户,正在尝试完全将 "jump" 转换为 R(尽管速度很慢)。

当我看到其中一个根本不适合我的控制台尺寸时,我正在制作一些简单的交叉表。在 Stata 中,使用相同的数据和相同的变量,交叉表非常适合。然而,在 R 中,一切都变得非常混乱。

table 是 10x10。下面是一个可重现的例子:

library(gmodels)
df  <- data.frame(id = 1:100, x1=sample(1:7, size=100,replace=TRUE), 
                  x2 = sample(0:10, size=100, replace=TRUE))

CrossTable(df$x1, df$x2, prop.r=TRUE, prop.t=TRUE, prop.c=TRUE)

以上 table 不适合我的屏幕。我什至没有兴趣将它放入 LaTeX 文档中;我只是想探索那个交叉表。我对使用 CrossTable 很感兴趣,因为它产生的结果对我来说是一个漂亮的 table,在边距中有百分比(行和列)和总计。我不知道这是 CrossTable 的问题还是因为我的 R 安装 displays/limits 输出。我尝试在 Rmarkdown 中做同样的事情,指定 "options(widht=huge_number)" 更大的 space,但这无济于事。

其他一些线程对我帮助不大。我找不到与我的问题直接相关的任何内容。线程示例:

How do I fit a very wide grid.table or tableGrob to fit on a pdf page?

Automatically adjust LaTeX table width to fit pdf using knitr and Rstudio

R-LaTeX Wide table

任何帮助将不胜感激。我也愿意学习其他产生类似输出的包。谢谢!

查看此线程: This 用于 Latex pdf 创建。它可能对你有帮助。 为了进入终端,为了检查列,使用 str(columns),或者你可以使用 data.table 包来查看终端 window 内的数据框。否则,您可以逐步对其进行切片以查看数据框。 让我知道这是否有帮助。

CrossTable 调用实际上创建了一个包含所有部分的列表对象。检查那些列表对象可能对检查很有用。

x<-CrossTable(df$x1, df$x2, prop.r=TRUE, prop.t=TRUE, prop.c=TRUE)
x$t
   y
x   0 1 2 3 4 5 6 7 8 9 10
  1 2 1 2 0 1 3 1 1 2 1  1
  2 2 1 1 2 1 2 1 2 1 2  0
  3 2 2 2 2 0 1 3 2 2 1  2
  4 1 2 1 1 1 2 2 1 2 0  0
  5 0 0 0 1 4 2 1 0 1 1  0
  6 0 1 2 0 0 1 0 1 0 1  5
  7 0 2 0 3 1 1 1 1 2 5  1

round(x$prop.row,3)
   y
x       0     1     2     3     4     5     6     7     8     9    10
  1 0.133 0.067 0.133 0.000 0.067 0.200 0.067 0.067 0.133 0.067 0.067
  2 0.133 0.067 0.067 0.133 0.067 0.133 0.067 0.133 0.067 0.133 0.000
  3 0.105 0.105 0.105 0.105 0.000 0.053 0.158 0.105 0.105 0.053 0.105
  4 0.077 0.154 0.077 0.077 0.077 0.154 0.154 0.077 0.154 0.000 0.000
  5 0.000 0.000 0.000 0.100 0.400 0.200 0.100 0.000 0.100 0.100 0.000
  6 0.000 0.091 0.182 0.000 0.000 0.091 0.000 0.091 0.000 0.091 0.455
  7 0.000 0.118 0.000 0.176 0.059 0.059 0.059 0.059 0.118 0.294 0.059

等... prop.col 和 prop.tbl 变量。

这是一个解决方法,但它会让您能够看到您所说的十字 table。

  • 首先,在 RStudio IDE 中,打开一个新的 R Notebook。
  • 其次,运行下面的代码。文档中的 '''{r} ''' 运行s R 代码(请注意,这些是 3 个反引号而不是单引号,如果我以正确的方式编码,它不会正确显示)。

    '''{r}

    图书馆(gmodels) df <- data.frame(id = 1:100, x1=sample(1:7, size=100,replace=TRUE), x2 = 样本(0:10,大小=100,替换=真))

    CT <-交叉表(df$x1,df$x2,prop.r=TRUE,prop.t=TRUE,prop.c=TRUE)

    视图(CT)

    '''

  • 第三:当你get/see你的交叉表输出时,它会像以前一样疯狂。在输出单元格的 "top-right" 角,你会发现 3 个选项 "x" 输出,“<<” hide/unhide 输出,以及 "window with arrow" 在单独的 [=48= 中打开].单击以弹出 window,然后将 window 展开为完整大小。有你的交叉表。

尽情享受吧:)