首页 > 解决方案 > 按亚组使用 CI 计算粗略和年龄标准化率、率差异和率比

问题描述

我刚刚从人口普查数据和长格式的健康管理数据库中建立了我的数据框 - 以按子组获取计数/面额。

这是它的外观示例

YR  Region   DI   Cat         Sex    Age15cat    n       Age15Pop    weight          
2014  ON     Mat   Low         F       45-59     574     913430     0.5258552 
2014  ON     Mat   Low         F       60-74     2227    657160     0.3208399 
2014  ON     Mat   Low         F        75+      2999    300750     0.1533049
2014  ON     Mat   Low         M       45-59     585     865105     0.5258552
2014  ON     Mat   Low         M       60-74     2120    605290     0.3208399
2014  ON     Mat   Low         M        75+      3150    233935     0.1533049

YR 也可以是 2015-2017,DI 是 Mat 或 Soc,Cat 是 Low 或 High

在每个区域、DI 和 cat 中,我正在寻找一个粗略的年龄标准化率,以及女性、男性和总体的置信区间(理解我可能必须重塑才能得到这个)。

YR    Region  DI    Cat  Sex Rate.t  Estimate     lci       uci  
2014    ON     Mat   Low   M  c.rate    0.0281   0.0257     0.0306 
2014    ON     Mat   Low   M  s.rate    0.0231   0.0210     0.0246
2014    ON     Mat   Low   F  c.rate    0.0221   0.0201     0.0232  
2014    ON     Mat   Low   F  s.rate    0.0241   0.0237     0.0246 
2014    ON     Mat   Low   T  c.rate    0.0251   0.0220     0.0267 
2014    ON     Mat   Low   T  s.rate    0.0255   0.0230     0.0260 


然后,我想计算每个区域内粗略和年龄标准化的风险比率和风险差异(使用 CI)和 DI - Low 除以 High 和 Low 减去 High 的女性、男性和总数,最终得到以下输出(意识到我可能不得不重塑)。

YR    Region   DI    Sex  Crude_Std  Measure  Estimate   lci    uci 
2014   ON      Mat    F    crude      RR        1.12     1.00   1.20 
2014   ON      Mat    M    crude      RR        1.89     1.22   3.00 
2014   ON      Mat    T    crude      RR        1.30     1.12   1.52 
2014   ON      Mat    F    crude      RD        0.23     0.21   0.24  
2014   ON      Mat    M    crude      RD        -0.01    -0.05  0.03
2014   ON      Mat    T    crude      RD         0.10     0.05  0.15 
2014   ON      Mat    F    std        RR         1.03     1.00  1.05 
2014   ON      Mat    M    std        RR         1.50     1.42  1.60  
 ….

我想在 tidyverse 中找到一种无需手动编写函数代码(尤其是计算置信区间)的方法。

我尝试过使用另一篇文章中的代码(见下文)

df.copd2 %>% 
  group_by(YR,Region, DI, Cat, Sex) %>% 
  summarise(age_adjust = list(ageadjust.direct(count = n,
                                               pop = Age15Pop, stdpop = weight))) %>%
  mutate(age_adjust = map(age_adjust, as.data.frame.list))  %>% 
  unnest

现在正在工作。我会重新运行一个group_by没有性行为的总和然后bind_rows。不过,它仍然缺少原油价格的 CI - 我如何得到它?

我不确定如何获得与 CI 的比率和比率差异。我认为这个包dsrr是要走的路,但我不知道如何用 tidyverse 来做。

任何帮助是极大的赞赏!

标签: rrateadjustment

解决方案


推荐阅读