如何保存expss包的输出?

问题描述

我使用 expss 包生成 mtcar 数据的汇总表。

library(expss)
data(mtcars)

mtcars %>% 
    tab_cells(cyl) %>% 
    tab_cols(total(),vs) %>% 
    tab_rows(am) %>% 
    tab_stat_cpct(total_row_position = "above",total_label = c("number of cases","row %"),total_statistic = c("u_cases","u_rpct")) %>% 
    tab_pivot()

我得到这样的输出

car output

现在我想将输出保存在 html、pdf 或 jpeg 文件中。 不幸的是,在循环之前或循环内使用 save.image 不起作用。必须有一个简单的解决方案吗?我也试图以某种方式从查看器导出,但也失败了。

还有可能在一行中显示每个不同发动机的因素(即气缸)的案例数及其整体比例(例如n案例(xy%)?)

解决方法

要将表格保存为 html,您可以在序列末尾添加 htmlTable 函数,然后保存 HTML 代码:

library(expss)
data(mtcars)

mtcars %>% 
    tab_cells(cyl) %>% 
    tab_cols(total(),vs) %>% 
    tab_rows(am) %>% 
    tab_stat_cpct(total_row_position = "above",total_label = c("number of cases","row %"),total_statistic = c("u_cases","u_rpct")) %>% 
    tab_pivot() %>% 
    htmlTable() %>% 
    writeLines("my_table.html")

您可以使用以下代码在一行中生成案例和表格百分比:

library(expss)
data(mtcars)

mtcars %>% 
    tab_cells(cyl) %>% 
    tab_cols(total(),vs) %>% 
    tab_rows(am) %>% 
    tab_stat_cases(total_row_position = "none") %>% 
    tab_stat_tpct(total_row_position = "none") %>% 
    tab_pivot(stat_position = "inside_columns")

# |    |    |     |    | #Total |       | vs |       |    |       |
# |    |    |     |    |        |       |  0 |       |  1 |       |
# | -- | -- | --- | -- | ------ | ----- | -- | ----- | -- | ----- |
# | am |  0 | cyl |  4 |      3 | 15.79 |    |       |  3 | 15.79 |
# |    |    |     |  6 |      4 | 21.05 |    |       |  4 | 21.05 |
# |    |    |     |  8 |     12 | 63.16 | 12 | 63.16 |    |       |
# |    |  1 | cyl |  4 |      8 | 61.54 |  1 |  7.69 |  7 | 53.85 |
# |    |    |     |  6 |      3 | 23.08 |  3 | 23.08 |    |       |
# |    |    |     |  8 |      2 | 15.38 |  2 | 15.38 |    |       |

现在没有选项可以将统​​计数据放在同一个单元格的括号中。