我使用gtsummary::tbl_summary()
创建汇总表。下面是一个示例数据:
df <- tribble(
~grade, ~year,
"A", "senior",
NA_character_, " senior",
"A", NA_character_,
"B", NA_character_,
NA_character_, NA_character_,
"F", "freshmen"
)
数据具有缺失值,这些缺失值会影响汇总表中的百分比
df |> tbl_summary()
等级A的百分比是50%,而不是2/6 = 33.3%。百分比是仅基于现有记录从4中计算出来的。我想从整个记录中获得百分比,所以我将缺失值设置为显式级别。
df |> mutate(across(everything(), ~forcats::fct_explicit_na(.x))) |> tbl_summary()
然而,现在我想删除那些行,(Missing)
在其他级别保持相同的百分比。我如何在输出表中删除这些行?我最终想要这样的东西。
| 特色|N = 6|
| --------------|--------------|
| 等级||
| 一个|2人(33%)|
| B|1人(17%)|
| F|1人(17%)|
| 年||
| 新生|1人(17%)|
| 高级|2人(33%)|
**edit:**或者有更聪明的方法来处理百分比?而不是让它们显式级别,有没有方法直接更改这些百分比?我已经尝试在tbl_summary()
中使用missing = "no"
参数,但百分比仍然保持不变
df |> tbl_summary(missing = "no")
2条答案
按热度按时间2w3kk1z51#
如果我们想高级为n = 2,那么我们首先要删除 Dataframe 中的额外白色。剩下的是使用
remove_row_type()
函数,如@丹尼尔D. Sjoberg在评论中提到的:s4n0splo2#