R 计算年龄标化率(Age Adjusted Rates)

Python021

R 计算年龄标化率(Age Adjusted Rates),第1张

为了在不同群体(例如地理区域,种族)的比率之间进行有效的比较,往往需要考虑年龄的分布,调整年龄分布的差异,以消除年龄的混淆影响。通过还需要计算在标准化后的置信区间。(Anderson 1998)

(ps:该死的预防医学,需要掌握率的标准化,但是R可以帮准你实现全部过程。)

假设某地区5个年龄组的HIV感染人数与对应年龄组的人口数。计算该地区的HIV的年龄标化率。

case/pop=CrudeRate可以通过 mutate 来计算

首先需要通过 standard_pop 标准人口来计算各个年龄组的比例,这个 standard_pop 可以根据某省或者WHO的标准,主要目的是获取不同年龄组所占总人口比例。

prop.table 可以计算年龄组的proportion;确保proportion 总和为1.

只需将每个年龄组的原始 case 乘以该年龄组的 proportion 即可。 (由于proportion均小于1,因此HIV的年龄标化率是各个年龄组调整后的累计效应)

根据该计算方式;可以得出 CrudeRate =166.0874 Adjust_rates=143.9176

这种用于估计95%CI的方法很复杂,但是依据正态分布的方法,在标准正态分布上使用误差的余量+/-平均值,对于该特定计算,年龄调整率作为中心( Confidence Intervals )。因此,借助于 epitools :

这里增加了一列数据 standard_pop 人口的各个感染病例数: standard_case ;这样就相当于两个地区各年龄组都有HIV的发病数。合并两个地区的pop计算调整的年龄标化率。

很简单,

提供思路如下:

首先用当年的年份减去每个人的年龄得到对应的出生年,然后把出生年份转换成字符串类型,用substr函数分别提取前两位和后两位,前两位的数值减去1是世纪,后两位去的第一位是年代。

就这么简单