如何设置;na.rm=TRUE";在R-glue语法中

如何设置;na.rm=TRUE";在R-glue语法中,r,gtsummary,R,Gtsummary,我正在使用gtsummary::tbl_summary创建统计汇总表 stats_summary_table <- dat_wide%>% tbl_summary(by = mss_plate_id, missing = "no", statistic = list(all_continuous() ~ " {mean} ± {sd} {cv}" )) stats\u s

我正在使用
gtsummary::tbl_summary
创建统计汇总表

stats_summary_table <-
  dat_wide%>%
  tbl_summary(by = mss_plate_id, 
              missing = "no",
              statistic = list(all_continuous() ~ " {mean} ± {sd}   {cv}"  ))
stats\u summary\u table%
tbl_汇总表(by=mss_板id),
missing=“否”,
统计=列表(所有连续()
cv
函数来自
goeveg
库。报告表将cv值显示为0。我想这是因为我的数据中缺少值。因此,我的问题是如何用glue语法编写
cv(x,na.rm=TRUE)

编辑:
结果表明,挑战是由于精度问题,而不是设置
na.rm=TRUE
。因此,解决方案是将cv的数字设置为2或3。(请参见标记的答案及其注释)

这是一个很好的问题

tbl_summary()
尝试做的一件困难的事情是猜测统计数据的四舍五入位数。这个例子很棘手,因为你经常希望平均值和CV以不同的精度显示,因为它们不在同一比例上。在下面的示例中,
tbl_summary()
猜测年龄应该四舍五入到最接近的整数。这是平均值和SD的合理假设,但我们需要告诉它显示更多的CV数字。为此,我们使用
tbl\u summary(digits=)
参数。显示年龄的三个统计数据(平均值、sd和cv),我们将传递长度为3的向量,指示每个统计数据的四舍五入位数

库(goeveg)
图书馆(摘要)
试用%>%
选择(年龄、标记)%>%
tbl_摘要(
统计=列表(所有连续()~“{mean}±{sd}[{cv}]”,
数字=列表(年龄~c(0,0,2))
)


希望这能回答你的问题!快乐编码

嗨@Daniel Sjoberg谢谢你及时回答我的问题。。。然而,我不确定它是否回答了我的问题。我的挑战是用得到均值和标准差的向量计算cv。直观地说,cv=sd*100/mean,但我不清楚如何在glue中实现该操作。所以我使用了
goeveg::cv
,但它只输出0,我想这是因为向量中缺少值,所以我喜欢用胶水语法为cv()设置
na.rm=TRUE
。在
tbl_summary()
中,在将向量传递给mean、sd或cv之前,所有缺少的值都被排除,因此您不需要添加
na.rm=TRUE
。您的CV四舍五入为0,但不是0。函数的作用是在不乘以100的情况下计算cv。在上述示例中,年龄sd/平均值=14/47=0.30<代码>goeveg::cv(试用$age,na.rm=TRUE)=0.30如表所示。这很有意义。这是因为数字,而不是na.rm。结果我问错了问题。谢谢。当我第一次看到这个问题时,我也被难住了!快乐编程!