首先是免责声明:我是Stata用户试图完全“跳”到R(慢慢地)。
当我看到其中一个根本不适合我的控制台尺寸时,我正在制作一些简单的交叉表。在Stata中,使用相同的数据和相同的变量,交叉表非常适合。然而,在R中,一切都变得非常混乱。
表格为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)
上表不适合我的屏幕。我甚至没有兴趣将它放入LaTeX文档中;我只是想探索那个交叉表。我有兴趣使用CrossTable,因为它产生的东西对我来说是一个好看的表,其中包含百分比(行和列)和总计。我不知道这是否是CrossTable的问题,或者是由于我的R安装如何显示/限制输出。我尝试在Rmarkdown中使用“options(widht = huge_number)”指定更大的空间,但这无济于事。
其他一些主题对我没什么帮助。我找不到与我的问题直接相关的任何内容。线程示例:
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
任何帮助将不胜感激。我也愿意学习其他导致类似输出的软件包。谢谢!
答案 0 :(得分:0)
查看此主题:
This用于创建Latex pdf。它可能会帮助你。
要进入终端,要检查列,请使用str(columns)
,或者使用data.table
包查看终端窗口内的数据框。否则,您可以逐步切片查看数据帧。
如果这有帮助,请告诉我。
答案 1 :(得分:0)
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
etc ...用于prop.col和prop.tbl变量。
答案 2 :(得分:0)
这是一个解决方法,但它可以让你看到你所说的交叉表。
其次,运行以下代码。 '''{r}'''在文档中运行R代码(请注意,这些是3个后面的刻度而不是单引号,如果我以正确的方式编码它,它就不会正确显示。)
'''{R}
库(gmodels) df&lt; - data.frame(id = 1:100,x1 = sample(1:7,size = 100,replace = TRUE), x2 =样本(0:10,大小= 100,替换= TRUE))
CT&lt; - CrossTable(df $ x1,df $ x2,prop.r = TRUE,prop.t = TRUE,prop.c = TRUE)
查看(CT)
'''
第三:当你看到交叉表的输出时,它会像以前一样疯狂。在输出单元格的“右上角”,您会找到3个选项“x”out,“&lt;&lt;”隐藏/取消隐藏输出,以及在单独的窗口中打开的“带箭头的窗口”。单击以弹出窗口,然后将窗口展开为完整大小。有你的交叉表。
享受:)