gpt4 book ai didi

r - KableExtra 不适用于 tableby

转载 作者:行者123 更新时间:2023-12-04 10:08:34 25 4
gpt4 key购买 nike

我想在性别和疾病之间做一个列联表。因为我将 R.markdown 用于 pdf。报告,我用 kableExtra自定义表格。当表格不是 data.frame 时,KableExtra 不能很好地制作表格。所以他们用 tableby 制作了丑陋的 table

有了这个 data.frame 这就是我得到的。

library(kableExtra)
library(arsenal)
set.seed(0)
Disease<-sample(c(rep("Name of the first category of the disease",20),
rep("Name of the Second category of the disease",32),
rep("Name of the third category of the disease",48),
rep("The category of those who do not belong to the first three categories",13)))
ID<-c(1:length(Disease))
Gender<-rbinom(length(Disease),1,0.55)
Gender<-factor(Gender,levels = c(0,1),labels = c("F","M"))

data<-data.frame(ID,Gender,Disease)

当我用 R.markdown (pdf) 运行这个分析的结果时,我得到了这种表格

enter image description here

有两个问题,急 KableExtra::不处理字符 &nbsp;&nbsp;&nbsp;其次,当我使用 tableby 时,我无法自定义列宽与 kableExtra ,因为我想放大包含变量名称的列,因为我确实在处理变量值名称很长的数据。但是如果我使用 kableknitr:: , 字符 &nbsp;&nbsp;&nbsp;已删除,但表格未按比例缩小,并且未显示部分。我想 knitr有很多限制。

我该如何处理这个问题?或者是否有另一个函数可以在 R.markdown(pdf 格式)中使用 p.value 来制作漂亮的列联表。

最佳答案

避免&nbsp;&nbsp;&nbsp;在使用 knitr 时添加到您的输出中,在块设置选项中使用 results='asin',例如:

{r results='asis'}
您可以使用打印功能中的宽度选项来控制列的宽度,其中包含您的变量名称。从技术上讲,您不需要在打印中包装摘要调用,但如果您这样做,它不会改变任何内容,并且您可以调整宽度设置。
所以,对于你的例子:
print(summary(tableby(Gender~Disease)), width = 20)
当它呈现为 pdf 时应该使其更具可读性。您可以更改宽度,它会在您设置的限制处换行。
使用示例中的代码和上面的函数调用,当编织为 pdf 时,表格如下所示:
enter image description here

关于r - KableExtra 不适用于 tableby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61449593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com