在今天早些时候遇到的情况之后,一个新的与 expss 相关的问题。在交叉表创建序列期间使用重叠小计会导致重复行,更准确地说,是在至少两个不同的小计中使用的行。
让我们考虑infert
数据集来突出这个问题。为了演示,我们将强制分解parity
。
library(datasets)
infert$parity <- factor(infert$parity)
infert %>%
tab_cells(parity) %>%
tab_subtotal_cells("1+2+3"=levels(parity)[1:3], "1+2"=levels(parity)[1:2],
position = "above") %>%
tab_cols(total()) %>%
tab_stat_cases(label="N", total_row_position="none") %>%
tab_pivot(stat_position="inside_columns")
结果是不言自明的。尽管我理解为什么会发生这种情况(需要计算每个不同的总数),但我想知道是否有一种聪明的方法可以消除重复项。
作为一个附属问题,由于小计可以以许多不同的方式编写/定位,因此输出顺序可能非常混乱。是否有仅对指定行进行排序和/或移动的功能?(实际上这与函数中的excluded_rows
参数相反tab_sort
)理想情况下,输出将按如下方式排序:
1+2+3
1+2
1
2
3
4
5+6
5
6
谢谢!