如何根据“分组计数”计算可变死亡率?

问题描述 投票:0回答:1

我有一个名为

df_incl_countries_with_outliers
的大数据框,包含 6000 多个案例和 100 个变量。为了简单起见,考虑两个变量:
Country
death_rate
。每个病例都是来自某个国家的已死亡或未死亡的人(
death_rate
是二分法)。我可以使用此代码计算每个国家/地区的死亡人数:

df_incl_countries_with_outliers %>% count(Country, death_rate)

问题是,我想计算一个新变量

mortality
,它是通过某个国家的所有死亡人数除以该国家所有病例的总和(当然减去缺失值)来计算的。比如:

count(deaths_of_country_A/(deaths_of_country_A + alive_of_country_A))

当然这适用于每个国家。

我为什么要这样做?因为我想制作新变量

mortality
的箱线图,以便我们知道某些国家/地区是否属于异常值。

我认为它与创建变量的

dplyr::mutate
函数有关,也许与按国家/地区分组的
dplyr::group_by
以及
count()
有关,但恐怕这就是我所了解的。非常感谢解决我这个问题的每一次尝试!

r dplyr count
1个回答
0
投票

找到了!这是代码:

df_incl_countries_with_outliers <- df_incl_countries_with_outliers %>%
     group_by(Country) %>%
     mutate(
         Mortality = sum(death_rate == "Dead", na.rm = TRUE) / sum(!is.na(death_rate))
     )

首先我们按不同国家进行分组。因此,当我在下面的句子中说“所有”时,它指的是“同一国家/地区的所有人员”。

Mutate
在数据框中创建一个新变量。新变量称为死亡率,它等于所有死亡人数的总和(其中缺失值不计入结果)除以所有病例的总和(同样,省略缺失值)。

© www.soinside.com 2019 - 2024. All rights reserved.