如何使用Norpred预测单年的发病/死亡率

课程讲义示例来源

R包的安装

在使用Norpred包进行发生/死亡率的预测前,我们需要安装Norpred 这里提供两种安装方法,请移步我的外部教程链接GBD视频教程——安装预测包的2种方法

下面我们来演示第一种R语言命令直接安装Norpred

install.packages("remotes")
library(remotes)
remotes::install_github("haraldwf/nordpred") 

装载R包及数据读取

library(nordpred)
library(data.table)
library(tidyverse)
library(ggplot2)
library(epitools)
library(reshape2)
source('function_sum_year.R')

读取标准人口数据

EC <-  read.csv('EC_predict.csv')
age_stand <- read.csv('GBD2019 world population age standard.csv')[-c(1:3),]
head(EC)
课程示例来源   measure location    sex         age             cause metric year
课程示例来源 1  Deaths   Global   Male 20-24 years Esophageal cancer Number 1990
课程示例来源 2  Deaths   Global Female 20-24 years Esophageal cancer Number 1990
课程示例来源 3  Deaths   Global   Both 20-24 years Esophageal cancer Number 1990
课程示例来源 4  Deaths   Global   Male 20-24 years Esophageal cancer   Rate 1990
课程示例来源 5  Deaths   Global Female 20-24 years Esophageal cancer   Rate 1990
课程示例来源 6  Deaths   Global   Both 20-24 years Esophageal cancer   Rate 1990
课程示例来源            val        upper        lower
课程示例来源 1 204.06728160 233.17885537 147.87989318
课程示例来源 2 211.56655514 251.61840857 148.46760027
课程示例来源 3 415.63383675 473.45283772 308.49779248
课程示例来源 4   0.08218287   0.09390681   0.05955484
课程示例来源 5   0.08657739   0.10296743   0.06075600
课程示例来源 6   0.08436255   0.09609826   0.06261680
rownames(age_stand) <- 1:nrow(age_stand)
knitr::kable(age_stand,digits=2,align = 'c')
age std_population
<1 year 2.03
1 to 4 7.91
5 to 9 9.57
10 to 14 8.99
15 to 19 8.32
20 to 24 7.87
25 to 29 7.63
30 to 34 7.33
35 to 39 6.81
40 to 44 6.14
45 to 49 5.51
50 to 54 4.92
55 to 59 4.35
60 to 64 3.68
65 to 69 2.99
70 to 74 2.27
75 to 79 1.61
80 to 84 1.11
85 to 89 0.62
90 to 94 0.26
95 plus 0.08

我比较喜欢把age换成原来的格式 首先来看下新版本的数据库提供的年龄格式

unique(EC$age)
课程示例来源  [1] "20-24 years"      "25-29 years"      "30-34 years"      "35-39 years"     
课程示例来源  [5] "40-44 years"      "45-49 years"      "50-54 years"      "55-59 years"     
课程示例来源  [9] "60-64 years"      "65-69 years"      "70-74 years"      "75-79 years"     
课程示例来源 [13] "All ages"         "Age-standardized" "80-84 years"      "85-89 years"     
课程示例来源 [17] "90-94 years"      "95+ years"        "<5 years"         "5-9 years"       
课程示例来源 [21] "10-14 years"      "15-19 years"

接着我们对年龄数据格式转换,以配对人口数据

EC <- EC %>% mutate(age=sub('-',replacement = ' to ', age)) %>% 
               mutate(age=sub(' years',replacement = '', age)) %>% 
               mutate(age=sub(' year',replacement = '', age)) %>% 
               mutate(age=sub('95\\+',replacement = '95 plus', age)) %>% 
               mutate(age=sub('Age to standardized',replacement = 'Age-standardized', age)) %>% 
               mutate(age=sub('<5',replacement = 'Under 5', age)) %>% 
               filter(val>0)
unique(EC$age)
课程示例来源  [1] "20 to 24"         "25 to 29"         "30 to 34"         "35 to 39"        
课程示例来源  [5] "40 to 44"         "45 to 49"         "50 to 54"         "55 to 59"        
课程示例来源  [9] "60 to 64"         "65 to 69"         "70 to 74"         "75 to 79"        
课程示例来源 [13] "All ages"         "Age-standardized" "80 to 84"         "85 to 89"        
课程示例来源 [17] "90 to 94"         "95 plus"

构建3种年龄向量用于提取不同数据

#### 疾病真实的年龄结构
ages <- c("20 to 24", "25 to 29",
          "30 to 34", "35 to 39", "40 to 44", "45 to 49", "50 to 54", "55 to 59",
          "60 to 64", "65 to 69", "70 to 74", "75 to 79", "80 to 84", "85 to 89",
          "90 to 94", "95 plus")

#### 调取标准人口百分比用
ages_2 <- c("<1 year","1 to 4", "5 to 9","10 to 14", "15 to 19","20 to 24", "25 to 29",
            "30 to 34", "35 to 39", "40 to 44", "45 to 49", "50 to 54", "55 to 59",
            "60 to 64", "65 to 69", "70 to 74", "75 to 79", "80 to 84", "85 to 89",
            "90 to 94", "95 plus")

####  预测的年龄结构
ages_3 <- c("0 to 14", "15 to 19","20 to 24", "25 to 29",
            "30 to 34", "35 to 39", "40 to 44", "45 to 49", "50 to 54", "55 to 59",
            "60 to 64", "65 to 69", "70 to 74", "75 to 79", "80 to 84",  "85 to 89",
            "90 to 94", "95 plus")

构建标准人口结构数据

wstand <- c(age_stand$std_population[1:4] %>% as.numeric() %>% sum(),
            age_stand$std_population[5:21])/sum(age_stand$std_population[1:21])
wstand
课程示例来源  [1] 0.2849456501 0.0832436219 0.0786645018 0.0763291734 0.0733151112
课程示例来源  [6] 0.0681105500 0.0613679818 0.0550949597 0.0492182257 0.0434563307
课程示例来源 [11] 0.0368447375 0.0299123972 0.0227248755 0.0160737166 0.0111303460
课程示例来源 [16] 0.0061707008 0.0025500807 0.0008470394

分别提取男性和女性食管癌发病数据

首先提取男性食管癌发病数据

### for incidence for Male and female
EC_Male_incidence <- EC %>% filter(age %in% ages &
                                     sex == 'Male' &
                                     metric == 'Number' &
                                     measure == 'Incidence' &
                                     location== 'Global')

EC_Male_incidence_n <- dcast(data = EC_Male_incidence, age~year, value.var = "val")
##### 扩展数据,将其年龄扩展成18个年龄段
EC_Male_incidence_n['0 to 14',] <- c('0 to 14',rep(0,ncol(EC_Male_incidence_n)-1))
EC_Male_incidence_n['15 to 19',] <- c('15 to 19',rep(0,ncol(EC_Male_incidence_n)-1))
EC_Male_incidence_n <- EC_Male_incidence_n %>% 
                      mutate(age=factor(age,levels = ages_3,ordered = T)) %>% 
                      arrange(age)

rownames(EC_Male_incidence_n) <- EC_Male_incidence_n$age
EC_Male_incidence_n <- EC_Male_incidence_n[,-1]
EC_Male_incidence_n <- apply(EC_Male_incidence_n, c(1,2), as.numeric) %>% as.data.frame()
knitr::kable(EC_Male_incidence_n,digits=2,align = 'c')
1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
0 to 14 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
15 to 19 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
20 to 24 291.16 294.54 294.16 293.67 289.08 283.38 277.81 275.62 274.28 274.55 276.50 275.86 278.47 283.18 291.01 298.79 302.92 311.04 320.38 322.40 321.93 310.12 296.38 287.99 281.50 273.44 271.49 274.38 281.51 283.28
25 to 29 417.29 435.25 447.92 458.53 466.94 472.57 477.78 481.32 483.88 491.74 496.69 491.91 488.84 487.88 487.82 484.06 473.57 469.25 478.62 490.02 497.55 496.21 493.23 494.38 490.62 486.26 483.95 483.03 492.78 495.10
30 to 34 996.76 1005.15 1019.96 1058.30 1104.83 1157.45 1205.53 1239.62 1261.60 1298.24 1343.12 1376.10 1402.31 1449.34 1457.52 1399.62 1306.94 1249.47 1231.80 1235.18 1220.03 1169.31 1133.13 1130.62 1145.72 1153.53 1185.77 1236.57 1307.84 1357.20
35 to 39 2821.14 2898.91 2927.26 2912.83 2856.17 2816.42 2789.21 2838.51 2981.90 3206.49 3461.59 3674.43 3897.11 4065.61 4175.55 4116.40 3983.14 3851.37 3719.86 3537.76 3370.09 3127.45 2929.77 2845.18 2834.58 2795.37 2796.19 2875.91 3026.56 3123.22
40 to 44 6998.61 7457.42 7782.45 8202.08 8438.49 8874.21 9041.55 9082.69 8959.71 8809.44 8670.65 8642.01 8927.17 9354.80 10039.65 10568.23 10861.14 10909.69 10491.06 9788.08 9354.40 8786.69 8265.25 7941.06 7739.44 7454.65 7325.89 7341.90 7444.92 7497.33
45 to 49 12361.37 12705.75 13228.37 13808.00 14650.88 15195.83 15978.15 16506.97 17310.78 18163.79 19540.09 20189.74 20733.27 20970.75 20675.75 19719.71 18597.38 18226.77 18718.87 19550.29 20020.65 20044.81 20051.58 19467.13 18552.04 18046.09 17788.11 17448.25 17351.53 17484.03
50 to 54 22640.81 22667.50 22683.20 22842.62 22853.15 23002.25 23514.94 24580.73 25769.60 27799.67 29376.27 31450.89 33285.61 35169.30 36622.04 38218.46 37659.83 36533.55 34585.20 31927.56 30171.27 29135.85 28871.64 29029.35 29641.31 30536.89 31216.91 32022.98 33011.73 33649.57
55 to 59 33332.86 33706.69 33878.18 34357.70 34432.14 34472.78 34230.51 34022.15 34222.19 34834.81 35790.92 37234.88 39642.57 41442.38 44492.76 46137.90 47259.23 47462.59 47785.79 46845.51 47614.28 47397.33 46997.85 45104.02 43271.33 42493.53 42225.01 42791.70 44654.77 47251.18
60 to 64 38051.56 38929.72 39380.31 40090.14 40226.18 40540.11 40873.75 41294.35 41910.54 42552.07 43464.84 44120.39 44923.87 46017.54 46905.63 47214.53 47369.54 49170.20 51035.92 53899.94 54817.57 56031.73 56621.51 57104.25 57046.14 58722.04 59005.86 58628.74 58159.95 57763.37
65 to 69 35744.33 37154.19 38433.98 39977.21 40990.70 42088.55 42699.29 43204.81 44049.62 45059.43 46833.65 48242.51 49637.40 51596.00 52477.27 52224.95 50610.73 49845.83 50094.89 50664.77 51413.02 52113.69 53824.73 54290.70 56051.44 56946.65 59153.12 60241.40 62624.51 65056.34
70 to 74 28990.44 30192.04 31305.85 32690.49 34047.85 35500.84 36729.00 38034.87 39840.59 41704.07 43960.30 45971.26 47672.53 49652.28 51313.89 51967.84 50958.14 50309.13 49921.26 49378.82 49223.93 48465.96 48027.45 47911.23 48230.81 48771.22 50250.74 53337.83 56460.79 60786.27
75 to 79 19201.81 19784.53 20224.69 20733.53 21095.70 21955.87 22883.93 23952.63 25455.29 27158.51 28981.75 30878.12 32596.66 34523.80 36269.50 37464.04 37224.11 37250.11 37770.63 38495.73 39028.79 39087.57 39310.56 39371.77 39470.67 39762.68 40205.55 40929.90 42346.83 43764.21
80 to 84 9864.95 10302.88 10662.60 11122.36 11531.22 11978.89 12343.76 12766.53 13401.63 14017.54 14920.70 16118.79 17262.94 18462.03 19884.67 21079.11 21466.90 22093.93 23024.09 24003.50 25028.53 25023.29 24973.79 25578.45 26573.39 27062.04 27717.03 28749.72 30034.84 31011.76
85 to 89 3603.34 3813.94 4002.65 4206.72 4385.76 4592.04 4805.14 5038.14 5343.52 5664.64 5928.13 6288.57 6602.23 6844.51 7157.09 7644.92 7994.89 8482.29 9046.22 9617.65 10128.24 10551.40 11061.50 11551.48 12004.67 12601.45 13203.13 13708.38 14352.32 15285.71
90 to 94 647.29 690.21 734.75 793.89 849.96 905.75 959.29 1018.34 1080.38 1144.51 1203.52 1285.71 1369.04 1450.36 1534.64 1632.07 1688.56 1753.44 1824.08 1884.19 1992.86 2118.55 2241.07 2334.92 2437.07 2592.51 2761.45 2930.07 3164.80 3447.78
95 plus 93.06 98.00 104.22 109.44 115.22 121.35 130.71 139.70 152.68 166.23 181.59 195.81 213.28 229.88 242.35 260.08 274.34 293.68 313.18 334.25 361.08 384.85 400.14 415.50 434.56 458.51 482.21 505.46 533.56 570.88

同理整理女性数据

EC_Female_incidence <- EC %>% filter(age %in% ages &
                                     sex == 'Female' &
                                     metric == 'Number' &
                                     measure == 'Incidence' &
                                     location== 'Global')

EC_Female_incidence_n <- dcast(data = EC_Female_incidence, age~year, value.var = "val")
##### 扩展数据,将其年龄扩展成18个年龄段
EC_Female_incidence_n['0 to 14',] <- c('0 to 14',rep(0,ncol(EC_Female_incidence_n)-1))
EC_Female_incidence_n['15 to 19',] <- c('15 to 19',rep(0,ncol(EC_Female_incidence_n)-1))
EC_Female_incidence_n <- EC_Female_incidence_n %>% 
                      mutate(age=factor(age,levels = ages_3,ordered = T)) %>% 
                      arrange(age)

rownames(EC_Female_incidence_n) <- EC_Female_incidence_n$age
EC_Female_incidence_n <- EC_Female_incidence_n[,-1]
EC_Female_incidence_n <- apply(EC_Female_incidence_n, c(1,2), as.numeric) %>% as.data.frame()
head(EC_Female_incidence_n)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  314.1757  315.3922  318.0992  317.6092  332.4554  344.0477  344.9262
课程示例来源 25 to 29  452.4966  462.8614  477.4293  482.8070  534.5153  573.5990  582.7055
课程示例来源 30 to 34  631.3312  635.2006  656.1672  674.9703  757.8403  838.0751  883.6074
课程示例来源 35 to 39 1188.6218 1209.0521 1234.8500 1237.0466 1242.4567 1239.2947 1245.1759
课程示例来源               1997      1998      1999      2000      2001      2002      2003
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  351.3694  359.5428  362.8672  362.2437  358.2691  344.5795  331.6477
课程示例来源 25 to 29  600.7503  629.7969  641.4846  642.5608  632.4197  576.4692  528.2847
课程示例来源 30 to 34  933.5899  989.7285 1014.0689 1034.8725 1030.6553  937.0606  875.2940
课程示例来源 35 to 39 1289.7061 1353.0632 1438.7904 1545.9526 1628.8055 1663.3665 1651.8056
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  333.8988  336.5320  333.4119  333.5738  336.0658  334.0830  334.5831
课程示例来源 25 to 29  514.7908  508.7874  490.0063  474.8055  477.9697  486.9705  497.1143
课程示例来源 30 to 34  864.8827  828.1417  786.9706  750.4158  733.3955  718.8268  710.3124
课程示例来源 35 to 39 1646.4349 1627.1979 1569.2407 1500.6156 1442.1869 1389.9362 1349.7532
课程示例来源               2011      2012      2013      2014      2015      2016      2017
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  327.2933  308.1487  293.5200  278.0433  268.6533  266.2743  266.7284
课程示例来源 25 to 29  492.1826  476.2211  476.3743  465.1776  457.7798  458.4295  462.3410
课程示例来源 30 to 34  692.5068  665.1585  665.3052  661.9004  662.7321  674.9041  696.1207
课程示例来源 35 to 39 1300.3991 1256.9669 1244.4920 1218.7966 1219.8465 1232.4696 1258.5939
课程示例来源               2018      2019
课程示例来源 0 to 14     0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000
课程示例来源 20 to 24  274.9388  277.8970
课程示例来源 25 to 29  472.8733  473.5171
课程示例来源 30 to 34  728.0291  748.2529
课程示例来源 35 to 39 1297.5730 1329.3401

读取人口学数据:

需要注意的是:人口学数据中地名Geogria有两个归属,一个属于美国的佐治亚州,另外一个是格鲁吉亚国家,所以204国家数据预测的时候,需要将佐治亚州滤过,通过变量location_id !=533进行筛选

##### 读取人口学数据
dirname <- dir("GBD_Population")
file <- paste0(getwd(),"/GBD_Population/",dirname)
var_name <- c('location_id',"location_name","sex_name","year_id","age_group_name","val")

GBD_population  <-  as.data.frame(matrix(nrow=0,ncol=length(var_name)))
names(GBD_population)=var_name
for (a in file) {
  data <- fread(a) %>% as.data.frame() %>% select(var_name) %>%
    filter(age_group_name %in% ages_2 & location_id !=533)
  GBD_population <- rbind(GBD_population,data)
}
GBD_population <- GBD_population %>% mutate(sex_name = case_when(
                                          sex_name == "both"  ~ "Both",
                                          sex_name == "male"  ~ "Male",
                                          sex_name == "female" ~ "Female")) %>% 
                                      select(-1)
head(GBD_population)
课程示例来源   location_name sex_name year_id age_group_name       val
课程示例来源 1        Global     Male    1990         1 to 4 257580225
课程示例来源 2        Global     Male    1990         5 to 9 300528886
课程示例来源 3        Global     Male    1990       10 to 14 274770756
课程示例来源 4        Global     Male    1990       15 to 19 264074872
课程示例来源 5        Global     Male    1990       20 to 24 248308772
课程示例来源 6        Global     Male    1990       25 to 29 222733930
#### 读取预测人口数据
prediction_var_name <- c("location_name","sex","year_id","age_group_name","val")
GBD_population_prediction <- fread('IHME_POP_2017_2100_POP_REFERENCE_Y2020M05D01.csv') %>% as.data.frame() %>% 
  select(prediction_var_name) %>%
  filter(year_id %in% 2020:2044)

names(GBD_population_prediction) <- var_name[-1]

unique(GBD_population_prediction$age_group_name)
课程示例来源  [1] "Early Neonatal" "Late Neonatal"  "Post Neonatal"  "1 to 4"        
课程示例来源  [5] "5 to 9"         "10 to 14"       "15 to 19"       "20 to 24"      
课程示例来源  [9] "25 to 29"       "30 to 34"       "35 to 39"       "40 to 44"      
课程示例来源 [13] "45 to 49"       "50 to 54"       "55 to 59"       "60 to 64"      
课程示例来源 [17] "65 to 69"       "70 to 74"       "75 to 79"       "All Ages"      
课程示例来源 [21] "80 to 84"       "85 to 89"       "90 to 94"       "95 plus"

由于预测人口数据没有<1的年龄数据,因此我们需要进行转换,将Early Neonatal,Late Neonatal, Post Neonatal,合并成<1的年龄数据

GBD_1year <- GBD_population_prediction %>% 
  filter(age_group_name %in% c("Early Neonatal","Late Neonatal", "Post Neonatal")) %>%
  group_by(location_name,sex_name,year_id) %>% 
  summarise(val=sum(val)) %>%
  mutate(age_group_name="<1 year") %>% 
  select(var_name[-1])

GBD_population_prediction <- GBD_population_prediction %>% filter(!(age_group_name %in% c("Early Neonatal","Late Neonatal", "Post Neonatal"))) %>%
  rbind(GBD_1year)
unique(GBD_population_prediction$age_group_name)
课程示例来源  [1] "1 to 4"   "5 to 9"   "10 to 14" "15 to 19" "20 to 24" "25 to 29"
课程示例来源  [7] "30 to 34" "35 to 39" "40 to 44" "45 to 49" "50 to 54" "55 to 59"
课程示例来源 [13] "60 to 64" "65 to 69" "70 to 74" "75 to 79" "All Ages" "80 to 84"
课程示例来源 [19] "85 to 89" "90 to 94" "95 plus"  "<1 year"

人口数据和预测人口数据进行合并

##### 合并现人口数+预测人口数
GBD <- rbind(GBD_population,GBD_population_prediction)
#### 合并0-14
GBD_age14 <- GBD %>% filter(age_group_name %in% c("<1 year","1 to 4","5 to 9","10 to 14")) %>%
  group_by(location_name,sex_name,year_id) %>%
  summarize(val=sum(val)) %>%  mutate(age_group_name='0 to 14') %>% select(c(1:3,5,4))
GBD <- rbind(GBD,GBD_age14)
GBD <- GBD %>% filter(age_group_name %in% ages_3) %>%
  mutate(age_group_name=factor(age_group_name,levels=ages_3,ordered = T)) %>%
  arrange(age_group_name)
unique(GBD$age_group_name)
课程示例来源  [1] 0 to 14  15 to 19 20 to 24 25 to 29 30 to 34 35 to 39 40 to 44 45 to 49
课程示例来源  [9] 50 to 54 55 to 59 60 to 64 65 to 69 70 to 74 75 to 79 80 to 84 85 to 89
课程示例来源 [17] 90 to 94 95 plus 
课程示例来源 18 Levels: 0 to 14 < 15 to 19 < 20 to 24 < 25 to 29 < 30 to 34 < ... < 95 plus

提取对应国家的人口学数据

##  提取对应国家的人口学数据
GBD_Global_Male <- GBD %>% filter(location_name=='Global' & sex_name == 'Male')
GBD_Global_Female <-  GBD %>% filter(location_name=='Global' & sex_name == 'Female')

GBD_Global_Male_n <- dcast(data = GBD_Global_Male, 
                           age_group_name ~ year_id,
                           value.var = c("val")) %>% 
                           select(-1)
GBD_Global_Female_n <- dcast(data = GBD_Global_Female, 
                             age_group_name ~ year_id,
                             value.var = c("val")) %>% 
                                 select(-1)

将5年数据相加成5年为一组的数据

GBD_Global_Male_n <- apply(GBD_Global_Male_n, c(1,2), as.numeric) %>% as.data.frame()
GBD_Global_Female_n <- apply(GBD_Global_Female_n, c(1,2), as.numeric) %>% as.data.frame()
EC_Male_incidence_n <- apply(EC_Male_incidence_n, c(1,2), as.numeric) %>% as.data.frame()
EC_Female_incidence_n <- apply(EC_Female_incidence_n, c(1,2), as.numeric) %>% as.data.frame()

EC_Male_incidence_g <- function_sum_year5(EC_Male_incidence_n,1990,2019,2019)
EC_Female_incidence_g <- function_sum_year5(EC_Female_incidence_n,1990,2019,2019)
GBD_Global_Male_g <- function_sum_year5(GBD_Global_Male_n,1990,2044,2019)
GBD_Global_Female_g <- function_sum_year5(GBD_Global_Female_n,1990,2044,2019)

rownames(EC_Male_incidence_g) <- ages_3
rownames(EC_Female_incidence_g) <-  ages_3
rownames(GBD_Global_Female_g) <-  ages_3
rownames(GBD_Global_Male_g) <-  ages_3

GBD_Global_Male_g <- apply(GBD_Global_Male_g, c(1,2), as.numeric) %>% as.data.frame()
GBD_Global_Female_g <- apply(GBD_Global_Female_g, c(1,2), as.numeric) %>% as.data.frame()
EC_Male_incidence_g <- apply(EC_Male_incidence_g, c(1,2), as.numeric) %>% as.data.frame()
EC_Female_incidence_g <- apply(EC_Female_incidence_g, c(1,2), as.numeric) %>% as.data.frame()

模型拟合

Norpred预测模型参数详解

cuttrend:预测过程中drift的减缓率

Norperiods:是指距离从现在往前用多少个period进行预测,我这里选择4:6,软件可以根据计算选择最佳的period,

startestage:指纳入模型进行回归分析的最年轻的年龄组,

startuseage:指的是用来预测的最年轻的年龄组,未纳入模型的年龄组

Linkfunc:可以选择power5或者poisson功能。

由于男性和女性的发病率有所不同,个人认为比较严谨的方法是采用分开预测的方法进行预测,因此这里展示采用分开预测的方法进行计算。

Male_res <- nordpred(EC_Male_incidence_g, GBD_Global_Male_g,
                     noperiods = 4:6, startestage = 3, startuseage = 3,
                     cuttrend = c(0, .25, .5, .75, .75), linkfunc = "power5",                           recent = NULL)

Female_res <- nordpred(EC_Female_incidence_g, GBD_Global_Female_g,
                       noperiods = 4:6, startestage = 3, startuseage = 3,
                       cuttrend = c(0, .25, .5, .75, .75), linkfunc = "power5",                           recent = NULL)

展示预测的数据

## 不同年龄段的发病率
round(nordpred.getpred(Male_res, incidence = TRUE, standpop = NULL), 2)
课程示例来源       1990-1994 1995-1999 2000-2004 2005-2009 2010-2014 2015-2019 2020-2024
课程示例来源 0-4        0.00      0.00      0.00      0.00      0.00      0.00      0.00
课程示例来源 5-9        0.00      0.00      0.00      0.00      0.00      0.00      0.00
课程示例来源 10-14      0.12      0.11      0.11      0.11      0.10      0.09      0.08
课程示例来源 15-19      0.19      0.19      0.19      0.18      0.17      0.16      0.16
课程示例来源 20-24      0.51      0.53      0.57      0.51      0.44      0.43      0.42
课程示例来源 25-29      1.55      1.45      1.66      1.55      1.20      1.11      1.10
课程示例来源 30-34      4.92      4.92      4.63      4.65      3.48      3.00      2.95
课程示例来源 35-39     10.61     10.94     11.70     10.00      8.99      7.52      6.70
课程示例来源 40-44     20.80     21.12     23.15     21.65     16.27     15.33     13.59
课程示例来源 45-49     35.44     34.00     36.12     34.94     29.49     25.59     23.75
课程示例来源 50-54     48.26     47.47     48.44     48.26     44.32     39.63     33.52
课程示例来源 55-59     62.63     61.86     65.42     61.41     57.65     52.68     48.53
课程示例来源 60-64     77.35     77.80     83.36     79.72     69.18     67.48     64.01
课程示例来源 65-69     79.57     83.46     90.62     87.81     80.32     75.31     71.90
课程示例来源 70-74     76.59     84.36     96.08     97.13     89.88     87.22     78.80
课程示例来源 75-79     73.61     78.28     89.47     95.00     92.86     91.43     85.15
课程示例来源 80-84     52.83     55.30     60.33     65.81     65.53     63.72     62.70
课程示例来源 85+       36.75     37.31     40.32     43.13     45.84     45.29     46.34
课程示例来源       2025-2029 2030-2034 2035-2039 2040-2044
课程示例来源 0-4        0.00      0.00      0.00      0.00
课程示例来源 5-9        0.00      0.00      0.00      0.00
课程示例来源 10-14      0.07      0.07      0.06      0.06
课程示例来源 15-19      0.14      0.14      0.13      0.13
课程示例来源 20-24      0.42      0.40      0.39      0.38
课程示例来源 25-29      1.11      1.14      1.12      1.09
课程示例来源 30-34      2.98      3.05      3.16      3.11
课程示例来源 35-39      6.58      6.73      6.97      7.17
课程示例来源 40-44     12.39     12.35     12.75     13.14
课程示例来源 45-49     21.18     19.69     19.84     20.43
课程示例来源 50-54     32.11     29.12     27.48     27.68
课程示例来源 55-59     41.85     40.54     37.30     35.30
课程示例来源 60-64     58.76     51.43     50.35     46.48
课程示例来源 65-69     68.57     63.57     56.26     55.09
课程示例来源 70-74     77.20     74.30     69.56     61.70
课程示例来源 75-79     78.54     77.60     75.32     70.53
课程示例来源 80-84     59.63     55.17     54.95     53.22
课程示例来源 85+       45.03     43.08     40.03     39.86
## 标准发病率
round(nordpred.getpred(Male_res, incidence = TRUE, standpop = wstand), 2)
课程示例来源 1990-1994 1995-1999 2000-2004 2005-2009 2010-2014 2015-2019 2020-2024 2025-2029 
课程示例来源     11.78     11.89     12.72     12.30     10.93     10.11      9.27      8.61 
课程示例来源 2030-2034 2035-2039 2040-2044 
课程示例来源      8.10      7.78      7.55
## 不同年龄段的发病数
round(nordpred.getpred(Male_res, incidence = FALSE, standpop = NULL), 2)
课程示例来源       1990-1994 1995-1999 2000-2004 2005-2009 2010-2014 2015-2019 2020-2024
课程示例来源 0-4        0.00      0.00      0.00      0.00      0.00      0.00      0.00
课程示例来源 5-9        0.00      0.00      0.00      0.00      0.00      0.00      0.00
课程示例来源 10-14   1462.61   1385.65   1405.03   1555.52   1497.92   1384.11   1251.01
课程示例来源 15-19   2225.92   2407.29   2453.15   2395.52   2471.99   2441.12   2404.65
课程示例来源 20-24   5184.99   6162.44   7028.39   6423.01   5798.81   6240.91   6431.73
课程示例来源 25-29  14416.32  14632.53  19274.29  19208.54  15107.07  14617.25  16034.44
课程示例来源 30-34  38879.05  44767.59  45634.27  52618.21  42086.85  37064.69  38552.13
课程示例来源 35-39  66754.37  83155.53 102109.60  94813.01  98136.20  88118.01  81693.63
课程示例来源 40-44 113687.26 124667.19 165904.11 178924.61 146849.43 160438.07 155525.58
课程示例来源 45-49 169707.57 171782.44 198603.51 235491.03 230384.81 219416.19 238521.15
课程示例来源 50-54 196677.91 207170.82 225432.26 248690.13 281621.19 292279.96 270102.52
课程示例来源 55-59 192300.40 217101.70 248786.84 253441.16 267693.58 304022.02 323667.23
课程示例来源 60-64 157226.67 191809.38 238570.27 252535.20 241859.38 269606.84 315965.69
课程示例来源 65-69 101040.26 121406.24 163249.83 188204.62 196269.37 207009.18 228931.40
课程示例来源 70-74  53484.02  64508.36  86649.13 111667.53 127177.45 144575.40 151896.26
课程示例来源 75-79  20012.40  25443.48  32820.54  42785.97  55297.28  69150.98  80361.16
课程示例来源 80-84   3716.10   5108.26   6843.27   8782.34  11124.47  14896.61  20926.52
课程示例来源 85+      519.94    710.67   1062.92   1475.53   1996.14   2550.61   3783.96
课程示例来源       2025-2029 2030-2034 2035-2039 2040-2044
课程示例来源 0-4        0.00      0.00      0.00      0.00
课程示例来源 5-9        0.00      0.00      0.00      0.00
课程示例来源 10-14   1171.35   1134.03   1117.72   1068.50
课程示例来源 15-19   2253.73   2200.45   2214.90   2193.61
课程示例来源 20-24   6377.42   6223.46   6297.78   6378.62
课程示例来源 25-29  16825.93  17012.79  17087.03  17377.36
课程示例来源 30-34  42697.62  45492.88  46576.04  46973.79
课程示例来源 35-39  84370.02  94702.04 102030.68 103994.18
课程示例来源 40-44 146670.30 153846.15 174584.57 187585.98
课程示例来源 45-49 232141.01 223358.64 237300.47 269026.70
课程示例来源 50-54 302123.98 299739.13 293184.26 311954.86
课程示例来源 55-59 304950.50 346790.92 350173.70 344520.39
课程示例来源 60-64 338632.10 326168.93 377413.70 384369.24
课程示例来源 65-69 273523.30 298755.53 294054.69 343592.85
课程示例来源 70-74 175549.30 215211.84 240219.59 240618.75
课程示例来源 75-79  88019.51 105690.71 133881.39 152028.37
课程示例来源 80-84  24789.99  28321.16  35551.48  46370.21
课程示例来源 85+     5301.65   6892.65   8540.00  11398.73

将Norpred预测的5年一组数据转换成单年一组数据

关于如何解决Norpred只能预测5年为一组的预测值的问题 以下为我的个人理解:

Norpred模型的本质其实就是广义线性模型,模型的理论基础是,发病率或死亡率和年龄结构和人口规模有关联。挖掘这种关联的基础还是广义线性模型(GLM)。

5年数据本质上是5年中位数的数据,比如2020-2024年的结果可以算作2022的数据。我们可以根据线性模型的线性关系将5年数据进行分解为单年的数据

预测的结果中5组5年预测数据组成:

中间3年:可以根据线性关系进行换算

第一组5年数据:拿前一组5年即2015-2019(2017)与2020-2024(2022)计算2020-2021年的数据。

最后一组5年数据:根据线性模型,人为计算出最后一组+1的数据,即2*最后一组5年数据-最后第二组5年数据,再根据根据线性关系进行换算。

Norpred模型预测ASR的原理是先计算每一年龄段的发病率数据后再根据ASR的原理计算预测的ASR,因此我们做的是根据得到的5年一组的每一年龄段的发病率根据线性关系换算成每一年的每一年龄段的发病率,再计算预测的ASR

我们来看下代码如何实现

## producing the end periods rates:
Male_Age_rate <- nordpred.getpred(Male_res, incidence = TRUE, standpop = NULL)
## 提取预测的率的数据
Male_Age_rate_proj <- Male_Age_rate[,7:ncol(Male_Age_rate)]
head(Male_Age_rate_proj)
课程示例来源        2020-2024  2025-2029  2030-2034  2035-2039  2040-2044
课程示例来源 0-4   0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 5-9   0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 10-14 0.07960918 0.07195209 0.06718343 0.06489586 0.06267102
课程示例来源 15-19 0.15780868 0.14450346 0.13614350 0.13211120 0.12817501
课程示例来源 20-24 0.42108056 0.42222379 0.40242120 0.39280254 0.38336869
课程示例来源 25-29 1.10323371 1.11363498 1.13826221 1.11612357 1.09433075
## 提取头之前之前的数据
rc1 <- Male_Age_rate[, 6]
rc1
课程示例来源  [1]  0.00000000  0.00000000  0.09081849  0.15886189  0.42844721  1.10871601
课程示例来源  [7]  3.00178577  7.51558076 15.32746643 25.59217849 39.62813206 52.68000931
课程示例来源 [13] 67.48178432 75.30569416 87.21791764 91.42758570 63.71799813 45.28597548
## 计算尾部+1的数据
rc2 <- 2*Male_Age_rate_proj[, ncol(Male_Age_rate_proj)] - Male_Age_rate_proj[, (ncol(Male_Age_rate_proj)-1)]
rc2
课程示例来源  [1]  0.00000000  0.00000000  0.06044619  0.12423883  0.37393484  1.07253792
课程示例来源  [7]  3.05642884  7.37315288 13.52591305 21.02126073 27.87881961 33.29243813
课程示例来源 [13] 42.61710393 53.93050505 53.83228649 65.74926967 51.49455984 39.69224184
##合并预测的数据
full_rate_proj <- cbind(rc1, Male_Age_rate_proj, rc2)
head(full_rate_proj)
课程示例来源              rc1  2020-2024  2025-2029  2030-2034  2035-2039  2040-2044
课程示例来源 0-4   0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 5-9   0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 10-14 0.09081849 0.07960918 0.07195209 0.06718343 0.06489586 0.06267102
课程示例来源 15-19 0.15886189 0.15780868 0.14450346 0.13614350 0.13211120 0.12817501
课程示例来源 20-24 0.42844721 0.42108056 0.42222379 0.40242120 0.39280254 0.38336869
课程示例来源 25-29 1.10871601 1.10323371 1.11363498 1.13826221 1.11612357 1.09433075
课程示例来源              rc2
课程示例来源 0-4   0.00000000
课程示例来源 5-9   0.00000000
课程示例来源 10-14 0.06044619
课程示例来源 15-19 0.12423883
课程示例来源 20-24 0.37393484
课程示例来源 25-29 1.07253792
annual_Male_Age_rate_proj <- matrix(NA, 18, 5*ncol(Male_Age_rate_proj))
for (i in 2:(5+1)){
    annual_Male_Age_rate_proj[,(i-2)*5+1] <- (2/5)*full_rate_proj[,i-1] + (3/5)*full_rate_proj[,i]
    annual_Male_Age_rate_proj[,(i-2)*5+2] <- (1/5)*full_rate_proj[,i-1] + (4/5)*full_rate_proj[,i]
    annual_Male_Age_rate_proj[,(i-2)*5+3] <- (0/5)*full_rate_proj[,i-1] + (5/5)*full_rate_proj[,i]
    annual_Male_Age_rate_proj[,(i-2)*5+4] <- (1/5)*full_rate_proj[,i+1] + (4/5)*full_rate_proj[,i]
    annual_Male_Age_rate_proj[,(i-2)*5+5] <- (2/5)*full_rate_proj[,i+1] + (3/5)*full_rate_proj[,i]
}
annual_Male_Age_rate_proj <- annual_Male_Age_rate_proj %>% as.data.frame()
names(annual_Male_Age_rate_proj) <- 2020:(2020+ncol(annual_Male_Age_rate_proj)-1)
rownames(annual_Male_Age_rate_proj) <- ages_3

这样,我们就得到了2020-2044年的每个年龄段的发病率数据

knitr::kable(annual_Male_Age_rate_proj,digits=2,align = 'c')
2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044
0 to 14 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
15 to 19 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
20 to 24 0.08 0.08 0.08 0.08 0.08 0.08 0.07 0.07 0.07 0.07 0.07 0.07 0.07 0.07 0.07 0.07 0.07 0.06 0.06 0.06 0.06 0.06 0.06 0.06 0.06
25 to 29 0.16 0.16 0.16 0.16 0.15 0.15 0.15 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13
30 to 34 0.42 0.42 0.42 0.42 0.42 0.42 0.42 0.42 0.42 0.41 0.41 0.41 0.40 0.40 0.40 0.40 0.39 0.39 0.39 0.39 0.39 0.39 0.38 0.38 0.38
35 to 39 1.11 1.10 1.10 1.11 1.11 1.11 1.11 1.11 1.12 1.12 1.13 1.13 1.14 1.13 1.13 1.12 1.12 1.12 1.11 1.11 1.10 1.10 1.09 1.09 1.09
40 to 44 2.97 2.96 2.95 2.95 2.96 2.97 2.97 2.98 2.99 3.01 3.02 3.04 3.05 3.07 3.09 3.11 3.14 3.16 3.15 3.14 3.13 3.12 3.11 3.10 3.09
45 to 49 7.03 6.86 6.70 6.68 6.65 6.63 6.61 6.58 6.61 6.64 6.67 6.70 6.73 6.78 6.83 6.87 6.92 6.97 7.01 7.05 7.09 7.13 7.17 7.21 7.25
50 to 54 14.28 13.93 13.59 13.35 13.11 12.87 12.63 12.39 12.38 12.38 12.37 12.36 12.35 12.43 12.51 12.59 12.67 12.75 12.83 12.91 12.98 13.06 13.14 13.22 13.29
55 to 59 24.49 24.12 23.75 23.24 22.72 22.21 21.69 21.18 20.88 20.58 20.28 19.99 19.69 19.72 19.75 19.78 19.81 19.84 19.96 20.08 20.20 20.31 20.43 20.55 20.67
60 to 64 35.97 34.75 33.52 33.24 32.96 32.67 32.39 32.11 31.51 30.91 30.31 29.71 29.12 28.79 28.46 28.13 27.80 27.48 27.52 27.56 27.60 27.64 27.68 27.72 27.76
65 to 69 50.19 49.36 48.53 47.20 45.86 44.52 43.19 41.85 41.59 41.33 41.07 40.80 40.54 39.89 39.24 38.60 37.95 37.30 36.90 36.50 36.10 35.70 35.30 34.89 34.49
70 to 74 65.40 64.71 64.01 62.96 61.91 60.86 59.81 58.76 57.29 55.83 54.36 52.89 51.43 51.21 51.00 50.78 50.56 50.35 49.57 48.80 48.03 47.25 46.48 45.71 44.94
75 to 79 73.26 72.58 71.90 71.23 70.57 69.90 69.23 68.57 67.57 66.57 65.57 64.57 63.57 62.11 60.65 59.18 57.72 56.26 56.03 55.79 55.56 55.33 55.09 54.86 54.63
80 to 84 82.17 80.48 78.80 78.48 78.16 77.84 77.52 77.20 76.62 76.04 75.46 74.88 74.30 73.35 72.40 71.46 70.51 69.56 67.99 66.42 64.84 63.27 61.70 60.12 58.55
85 to 89 87.66 86.41 85.15 83.83 82.51 81.19 79.86 78.54 78.35 78.16 77.97 77.79 77.60 77.14 76.69 76.23 75.77 75.32 74.36 73.40 72.45 71.49 70.53 69.58 68.62
90 to 94 63.11 62.91 62.70 62.09 61.47 60.86 60.25 59.63 58.74 57.85 56.95 56.06 55.17 55.12 55.08 55.04 54.99 54.95 54.60 54.26 53.91 53.57 53.22 52.88 52.53
95 plus 45.92 46.13 46.34 46.07 45.81 45.55 45.29 45.03 44.64 44.25 43.86 43.47 43.08 42.47 41.86 41.25 40.64 40.03 39.99 39.96 39.93 39.89 39.86 39.83 39.79
annual_Male_Age_rate_ob <- EC_Male_incidence_n/GBD_Global_Male_n[,1:30]*100000

Male_Age_rate <- cbind(annual_Male_Age_rate_ob,annual_Male_Age_rate_proj)
Male_Age_count <- Male_Age_rate*GBD_Global_Male_n/100000
rownames(Male_Age_rate) <- ages_3
rownames(Male_Age_count) <- ages_3
## 每个年龄段的发病率
head(Male_Age_rate)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1172577 0.1172053 0.1161043 0.1153998 0.1134671 0.1113437 0.1094017
课程示例来源 25 to 29 0.1873471 0.1897218 0.1903727 0.1912269 0.1920114 0.1921580 0.1921752
课程示例来源 30 to 34 0.5099405 0.5072882 0.5042377 0.5078725 0.5124141 0.5194022 0.5260961
课程示例来源 35 to 39 1.5760143 1.5803043 1.5635869 1.5341092 1.4896554 1.4549466 1.4203647
课程示例来源               1997      1998      1999      2000      2001      2002      2003
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1086706 0.1079916 0.1075435 0.1072887 0.1055914 0.1047849 0.1045220
课程示例来源 25 to 29 0.1920918 0.1922547 0.1950853 0.1971521 0.1956316 0.1945945 0.1938734
课程示例来源 30 to 34 0.5286056 0.5291393 0.5379695 0.5509262 0.5582149 0.5637271 0.5790106
课程示例来源 35 to 39 1.4143661 1.4407985 1.4963420 1.5624292 1.6134502 1.6728710 1.7168612
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1052891 0.1059000 0.1049182 0.1051462 0.1058912 0.1046518 0.1032698
课程示例来源 25 to 29 0.1928052 0.1895636 0.1829711 0.1781989 0.1783565 0.1792053 0.1784046
课程示例来源 30 to 34 0.5801779 0.5563286 0.5194335 0.4959935 0.4873195 0.4857523 0.4754761
课程示例来源 35 to 39 1.7415923 1.6985601 1.6239461 1.5542206 1.4901682 1.4111062 1.3413203
课程示例来源                2011      2012       2013       2014       2015      2016
课程示例来源 0 to 14  0.00000000 0.0000000 0.00000000 0.00000000 0.00000000 0.0000000
课程示例来源 15 to 19 0.00000000 0.0000000 0.00000000 0.00000000 0.00000000 0.0000000
课程示例来源 20 to 24 0.09901558 0.0947570 0.09258192 0.09116926 0.08921786 0.0890295
课程示例来源 25 to 29 0.17401471 0.1690357 0.16583450 0.16165746 0.15821752 0.1566457
课程示例来源 30 to 34 0.45005053 0.4294623 0.42112025 0.41897640 0.41361493 0.4159047
课程示例来源 35 to 39 1.24420128 1.1647347 1.12808207 1.11748418 1.09203253 1.0789419
课程示例来源                2017       2018       2019      2020       2021       2022
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.0000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.0000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.09019953 0.09259019 0.09307148 0.0840929 0.08185104 0.07960918
课程示例来源 25 to 29 0.15651521 0.16053781 0.16244653 0.1582300 0.15801932 0.15780868
课程示例来源 30 to 34 0.42403293 0.43910411 0.44766302 0.4240272 0.42255389 0.42108056
课程示例来源 35 to 39 1.09312363 1.13089951 1.14596644 1.1054266 1.10433017 1.10323371
课程示例来源                2023       2024       2025       2026       2027       2028
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.07807776 0.07654634 0.07501493 0.07348351 0.07195209 0.07099836
课程示例来源 25 to 29 0.15514764 0.15248659 0.14982555 0.14716450 0.14450346 0.14283147
课程示例来源 30 to 34 0.42130920 0.42153785 0.42176650 0.42199514 0.42222379 0.41826327
课程示例来源 35 to 39 1.10531397 1.10739422 1.10947447 1.11155473 1.11363498 1.11856043
课程示例来源                2029       2030       2031       2032       2033      2034
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.0000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.0000000
课程示例来源 20 to 24 0.07004462 0.06909089 0.06813716 0.06718343 0.06672591 0.0662684
课程示例来源 25 to 29 0.14115948 0.13948748 0.13781549 0.13614350 0.13533704 0.1345306
课程示例来源 30 to 34 0.41430275 0.41034224 0.40638172 0.40242120 0.40049747 0.3985737
课程示例来源 35 to 39 1.12348588 1.12841132 1.13333677 1.13826221 1.13383449 1.1294068
课程示例来源                2035       2036       2037       2038       2039       2040
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.06581088 0.06535337 0.06489586 0.06445089 0.06400592 0.06356096
课程示例来源 25 to 29 0.13372412 0.13291766 0.13211120 0.13132396 0.13053673 0.12974949
课程示例来源 30 to 34 0.39665001 0.39472627 0.39280254 0.39091577 0.38902900 0.38714223
课程示例来源 35 to 39 1.12497903 1.12055130 1.11612357 1.11176501 1.10740644 1.10304788
课程示例来源                2041       2042       2043       2044
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.06311599 0.06267102 0.06222606 0.06178109
课程示例来源 25 to 29 0.12896225 0.12817501 0.12738778 0.12660054
课程示例来源 30 to 34 0.38525546 0.38336869 0.38148192 0.37959515
课程示例来源 35 to 39 1.09868931 1.09433075 1.08997218 1.08561362
## 每个年龄段的发病数
head(Male_Age_count)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  291.1612  294.5433  294.1617  293.6652  289.0831  283.3790  277.8131
课程示例来源 25 to 29  417.2857  435.2500  447.9225  458.5289  466.9366  472.5735  477.7830
课程示例来源 30 to 34  996.7558 1005.1520 1019.9554 1058.2955 1104.8272 1157.4490 1205.5276
课程示例来源 35 to 39 2821.1391 2898.9136 2927.2640 2912.8349 2856.1667 2816.4215 2789.2080
课程示例来源               1997      1998      1999      2000      2001      2002      2003
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  275.6204  274.2784  274.5544  276.5031  275.8566  278.4735  283.1843
课程示例来源 25 to 29  481.3208  483.8762  491.7413  496.6934  491.9130  488.8430  487.8812
课程示例来源 30 to 34 1239.6210 1261.5975 1298.2436 1343.1208 1376.0994 1402.3089 1449.3437
课程示例来源 35 to 39 2838.5101 2981.8965 3206.4889 3461.5883 3674.4302 3897.1092 4065.6149
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  291.0089  298.7858  302.9173  311.0375  320.3839  322.3960  321.9275
课程示例来源 25 to 29  487.8165  484.0605  473.5674  469.2453  478.6198  490.0228  497.5462
课程示例来源 30 to 34 1457.5184 1399.6160 1306.9396 1249.4750 1231.7976 1235.1783 1220.0337
课程示例来源 35 to 39 4175.5505 4116.4047 3983.1449 3851.3705 3719.8586 3537.7618 3370.0857
课程示例来源               2011      2012      2013      2014      2015      2016      2017
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  310.1169  296.3840  287.9895  281.5013  273.4434  271.4938  274.3779
课程示例来源 25 to 29  496.2135  493.2275  494.3823  490.6223  486.2592  483.9461  483.0344
课程示例来源 30 to 34 1169.3072 1133.1288 1130.6182 1145.7181 1153.5283 1185.7714 1236.5707
课程示例来源 35 to 39 3127.4508 2929.7740 2845.1797 2834.5814 2795.3665 2796.1868 2875.9133
课程示例来源               2018      2019      2020      2021      2022      2023      2024
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  281.5108  283.2800  260.7896  255.5174  250.1847  247.0028  243.8197
课程示例来源 25 to 29  492.7773  495.0997  483.4408  480.4855  479.2913  472.4632  466.5091
课程示例来源 30 to 34 1307.8406 1357.2007 1290.0083 1292.3201 1290.9980 1289.7841 1284.1811
课程示例来源 35 to 39 3026.5642 3123.2195 3106.6270 3168.0706 3217.6224 3264.7772 3305.2133
课程示例来源               2025      2026      2027      2028      2029      2030      2031
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  240.6314  237.4291  234.2017  232.8715  231.5569  230.1822  228.6759
课程示例来源 25 to 29  461.1020  455.9330  450.7125  448.4837  446.3028  444.1638  442.0552
课程示例来源 30 to 34 1277.1955 1271.8385 1271.1342 1262.6432 1256.5585 1252.0498 1248.3195
课程示例来源 35 to 39 3338.0733 3362.4557 3377.4373 3387.6220 3386.1419 3380.8427 3379.7218
课程示例来源               2032      2033      2034      2035      2036      2037      2038
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  226.9686  226.7383  226.3432  225.7610  224.9658  224.2022  222.4613
课程示例来源 25 to 29  439.9587  440.7452  441.6135  442.4222  443.0296  443.2959  443.2636
课程示例来源 30 to 34 1244.5943 1247.0399 1249.7371 1252.6791 1255.8394 1259.1737 1262.9609
课程示例来源 35 to 39 3390.9299 3387.2057 3390.0755 3397.4092 3407.1105 3417.1060 3427.1511
课程示例来源               2039      2040      2041      2042      2043      2044
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  220.4464  218.2544  215.9504  213.3827  211.4960  209.4653
课程示例来源 25 to 29  442.9130  442.2011  441.0764  440.0184  436.9478  433.3345
课程示例来源 30 to 34 1267.0081 1270.9081 1274.2522 1276.6340 1277.9862 1278.4403
课程示例来源 35 to 39 3437.9582 3449.5014 3461.6967 3474.4167 3488.1025 3502.5605
## 总发病数
Male_sum_year <- apply(Male_Age_count, 2, sum) %>% as.data.frame()
Male_sum_year$year <- 1990:(1990+nrow(Male_sum_year)-1)
names(Male_sum_year) <- c("number","year")
head(Male_sum_year)
课程示例来源        number year
课程示例来源 1990 216056.8 1990
课程示例来源 1991 222136.7 1991
课程示例来源 1992 227110.5 1992
课程示例来源 1993 233657.5 1993
课程示例来源 1994 238334.3 1994
课程示例来源 1995 243958.3 1995
## 计算标准发病率
Male_Age_standardized <- matrix(nrow =0, ncol = 2) %>% as.data.frame()
names(Male_Age_standardized) <- c("ASR","year")

for (i in 1:ncol(Male_Age_count)) {
  asr = ageadjust.direct(count = Male_Age_count[,i], pop = GBD_Global_Male_n[,i],
                         stdpop = wstand)
  Male_Age_standardized[i,1:2] <- c(round(100000*asr, 2)[2],names(Male_Age_count)[i]) ##rate per 100,000 per year
}
head(Male_Age_standardized)
课程示例来源     ASR year
课程示例来源 1 11.71 1990
课程示例来源 2 11.77 1991
课程示例来源 3 11.76 1992
课程示例来源 4 11.83 1993
课程示例来源 5 11.81 1994
课程示例来源 6 11.83 1995

同理计算女性数据

Female_Age_rate <- nordpred.getpred(Female_res, incidence = TRUE, standpop = NULL)
Female_Age_rate_proj <- Female_Age_rate[,7:ncol(Female_Age_rate)]
rc1 <- Female_Age_rate[, 6]
rc2 <- 2*Female_Age_rate_proj[, ncol(Female_Age_rate_proj)] - Female_Age_rate_proj[, (ncol(Female_Age_rate_proj)-1)]
full_rate_proj <- cbind(rc1, Female_Age_rate_proj, rc2)

# producing annual age-specific rates:
annual_Female_Age_rate_proj <- matrix(NA, 18, 5*ncol(Female_Age_rate_proj))
for (i in 2:(5+1)){
  annual_Female_Age_rate_proj[,(i-2)*5+1] <- (2/5)*full_rate_proj[,i-1] + (3/5)*full_rate_proj[,i]
  annual_Female_Age_rate_proj[,(i-2)*5+2] <- (1/5)*full_rate_proj[,i-1] + (4/5)*full_rate_proj[,i]
  annual_Female_Age_rate_proj[,(i-2)*5+3] <- (0/5)*full_rate_proj[,i-1] + (5/5)*full_rate_proj[,i]
  annual_Female_Age_rate_proj[,(i-2)*5+4] <- (1/5)*full_rate_proj[,i+1] + (4/5)*full_rate_proj[,i]
  annual_Female_Age_rate_proj[,(i-2)*5+5] <- (2/5)*full_rate_proj[,i+1] + (3/5)*full_rate_proj[,i]
}
annual_Female_Age_rate_proj <- annual_Female_Age_rate_proj %>% as.data.frame()
names(annual_Female_Age_rate_proj) <- 2020:(2020+ncol(annual_Female_Age_rate_proj)-1)
rownames(annual_Female_Age_rate_proj) <- ages_3

annual_Female_Age_rate_ob <- EC_Female_incidence_n/GBD_Global_Female_n[,1:30]*100000

Female_Age_rate <- cbind(annual_Female_Age_rate_ob,annual_Female_Age_rate_proj)
Female_Age_count <- Female_Age_rate*GBD_Global_Female_n/100000
rownames(Female_Age_rate) <- ages_3
rownames(Female_Age_count) <- ages_3


Female_sum_year <- apply(Female_Age_count, 2, sum) %>% as.data.frame()
Female_sum_year$year <- 1990:(1990+nrow(Female_sum_year)-1)
names(Female_sum_year) <- c("number","year")


Female_Age_standardized <- matrix(nrow =0, ncol = 2) %>% as.data.frame()
names(Female_Age_standardized) <- c("ASR","year")

for (i in 1:ncol(Female_Age_count)) {
  asr = ageadjust.direct(count = Female_Age_count[,i], pop = GBD_Global_Female_n[,i],
                         stdpop = wstand)
  Female_Age_standardized[i,1:2] <- c(round(100000*asr, 2)[2],names(Female_Age_count)[i]) ##rate per 100,000 per year
}

head(Female_Age_rate)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1285672 0.1279918 0.1282682 0.1274204 0.1328378 0.1370568 0.1372056
课程示例来源 25 to 29 0.2055781 0.2044285 0.2059846 0.2048255 0.2239549 0.2378944 0.2391944
课程示例来源 30 to 34 0.3319933 0.3289697 0.3322790 0.3312806 0.3591024 0.3838996 0.3931173
课程示例来源 35 to 39 0.6841474 0.6802768 0.6818124 0.6743417 0.6707781 0.6620017 0.6541716
课程示例来源               1997      1998      1999      2000      2001      2002      2003
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1395197 0.1422899 0.1427363 0.1411361 0.1377018 0.1302922 0.1231990
课程示例来源 25 to 29 0.2443608 0.2541536 0.2571603 0.2562934 0.2516296 0.2289144 0.2091188
课程示例来源 30 to 34 0.4053906 0.4222954 0.4271104 0.4312460 0.4248548 0.3826157 0.3545222
课程示例来源 35 to 39 0.6613265 0.6712075 0.6879572 0.7136266 0.7298394 0.7274195 0.7099374
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1218310 0.1205358 0.1169439 0.1144195 0.1128954 0.1103267 0.1091758
课程示例来源 25 to 29 0.2026273 0.1984970 0.1886914 0.1799146 0.1780022 0.1782768 0.1787850
课程示例来源 30 to 34 0.3480697 0.3318236 0.3147864 0.2997544 0.2922483 0.2850719 0.2793515
课程示例来源 35 to 39 0.6987266 0.6835382 0.6523398 0.6181114 0.5895341 0.5648522 0.5462630
课程示例来源               2011      2012       2013       2014       2015       2016
课程示例来源 0 to 14  0.0000000 0.0000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.1063314 0.1003351 0.09622419 0.09196482 0.08966389 0.08947122
课程示例来源 25 to 29 0.1734881 0.1643497 0.16108350 0.15456890 0.15025122 0.14979319
课程示例来源 30 to 34 0.2689449 0.2543737 0.25016396 0.24462813 0.24054034 0.24001113
课程示例来源 35 to 39 0.5254784 0.5073629 0.50108229 0.48814072 0.48423167 0.48293618
课程示例来源               2017       2018       2019       2020       2021      2022
课程示例来源 0 to 14  0.0000000 0.00000000 0.00000000 0.00000000 0.00000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.00000000 0.00000000 0.00000000 0.00000000 0.0000000
课程示例来源 20 to 24 0.0899865 0.09293322 0.09395515 0.08495025 0.08286852 0.0807868
课程示例来源 25 to 29 0.1513954 0.15589449 0.15747522 0.15419918 0.15461761 0.1550360
课程示例来源 30 to 34 0.2423043 0.24822764 0.25062245 0.25506628 0.25860295 0.2621396
课程示例来源 35 to 39 0.4854662 0.49194746 0.49521697 0.48535747 0.48445610 0.4835547
课程示例来源                2023       2024      2025       2026       2027       2028
课程示例来源 0 to 14  0.00000000 0.00000000 0.0000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.0000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.07935396 0.07792113 0.0764883 0.07505547 0.07362263 0.07272527
课程示例来源 25 to 29 0.15261153 0.15018703 0.1477625 0.14533803 0.14291353 0.14138326
课程示例来源 30 to 34 0.26190348 0.26166732 0.2614312 0.26119501 0.26095886 0.25847548
课程示例来源 35 to 39 0.48925494 0.49495514 0.5006554 0.50635556 0.51205577 0.51383468
课程示例来源                2029       2030       2031       2032       2033       2034
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.07182791 0.07093055 0.07003318 0.06913582 0.06870385 0.06827189
课程示例来源 25 to 29 0.13985300 0.13832274 0.13679248 0.13526221 0.13452206 0.13378191
课程示例来源 30 to 34 0.25599209 0.25350871 0.25102533 0.24854195 0.24733622 0.24613050
课程示例来源 35 to 39 0.51561359 0.51739250 0.51917141 0.52095032 0.51876784 0.51658535
课程示例来源                2035       2036       2037       2038       2039       2040
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.06783992 0.06740796 0.06697599 0.06655489 0.06613378 0.06571268
课程示例来源 25 to 29 0.13304177 0.13230162 0.13156147 0.13083761 0.13011375 0.12938989
课程示例来源 30 to 34 0.24492477 0.24371905 0.24251332 0.24133111 0.24014890 0.23896668
课程示例来源 35 to 39 0.51440287 0.51222039 0.51003790 0.50789215 0.50574639 0.50360064
课程示例来源                2041       2042       2043       2044
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.06529158 0.06487048 0.06444937 0.06402827
课程示例来源 25 to 29 0.12866603 0.12794217 0.12721831 0.12649445
课程示例来源 30 to 34 0.23778447 0.23660225 0.23542004 0.23423783
课程示例来源 35 to 39 0.50145488 0.49930913 0.49716337 0.49501761
head(Female_Age_count)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  314.1757  315.3922  318.0992  317.6092  332.4554  344.0477  344.9262
课程示例来源 25 to 29  452.4966  462.8614  477.4293  482.8070  534.5153  573.5990  582.7055
课程示例来源 30 to 34  631.3312  635.2006  656.1672  674.9703  757.8403  838.0751  883.6074
课程示例来源 35 to 39 1188.6218 1209.0521 1234.8500 1237.0466 1242.4567 1239.2947 1245.1759
课程示例来源               1997      1998      1999      2000      2001      2002      2003
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  351.3694  359.5428  362.8672  362.2437  358.2691  344.5795  331.6477
课程示例来源 25 to 29  600.7503  629.7969  641.4846  642.5608  632.4197  576.4692  528.2847
课程示例来源 30 to 34  933.5899  989.7285 1014.0689 1034.8725 1030.6553  937.0606  875.2940
课程示例来源 35 to 39 1289.7061 1353.0632 1438.7904 1545.9526 1628.8055 1663.3665 1651.8056
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  333.8988  336.5320  333.4119  333.5738  336.0658  334.0830  334.5831
课程示例来源 25 to 29  514.7908  508.7874  490.0063  474.8055  477.9697  486.9705  497.1143
课程示例来源 30 to 34  864.8827  828.1417  786.9706  750.4158  733.3955  718.8268  710.3124
课程示例来源 35 to 39 1646.4349 1627.1979 1569.2407 1500.6156 1442.1869 1389.9362 1349.7532
课程示例来源               2011      2012      2013      2014      2015      2016      2017
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  327.2933  308.1487  293.5200  278.0433  268.6533  266.2743  266.7284
课程示例来源 25 to 29  492.1826  476.2211  476.3743  465.1776  457.7798  458.4295  462.3410
课程示例来源 30 to 34  692.5068  665.1585  665.3052  661.9004  662.7321  674.9041  696.1207
课程示例来源 35 to 39 1300.3991 1256.9669 1244.4920 1218.7966 1219.8465 1232.4696 1258.5939
课程示例来源               2018      2019      2020      2021      2022      2023      2024
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  274.9388  277.8970  253.1522  247.3196  241.6785  238.1329  234.7209
课程示例来源 25 to 29  472.8733  473.5171  463.9847  461.4690  460.5565  452.6851  445.3169
课程示例来源 30 to 34  728.0291  748.2529  770.3935  786.4233  799.3766  796.5799  790.2940
课程示例来源 35 to 39 1297.5730 1329.3401 1348.3738 1375.4840 1397.6931 1434.9544 1470.3860
课程示例来源               2025      2026      2027      2028      2029      2030      2031
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  231.4330  228.2573  225.1795  223.9126  222.8124  221.7453  220.5836
课程示例来源 25 to 29  438.3973  431.8748  425.7003  422.4801  419.5194  416.8074  414.3287
课程示例来源 30 to 34  782.6027  775.5800  771.2912  762.8601  755.2681  748.4381  742.2976
课程示例来源 35 to 39 1502.6394 1530.3066 1551.9195 1553.3413 1547.8683 1539.5222 1532.3784
课程示例来源               2032      2033      2034      2035      2036      2037      2038
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  219.2053  219.1123  218.8940  218.4890  217.8339  217.1203  215.5349
课程示例来源 25 to 29  412.0635  412.5594  413.4027  414.3513  415.1671  415.6166  415.7783
课程示例来源 30 to 34  736.7771  735.5742  734.8553  734.6108  734.8221  735.4628  736.8383
课程示例来源 35 to 39 1530.5664 1522.0462 1515.1894 1509.8690 1505.9622 1503.3504 1501.9566
课程示例来源               2039      2040      2041      2042      2043      2044
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  213.6966  211.7263  209.7127  207.5388  205.9379  204.1835
课程示例来源 25 to 29  415.7058  415.2819  414.3850  413.3795  410.6425  407.4206
课程示例来源 30 to 34  738.8421  741.0419  743.0103  744.3282  745.0429  745.3422
课程示例来源 35 to 39 1501.5617 1502.1490 1503.6814 1506.1048 1509.9002 1514.9980
head(Female_sum_year)
课程示例来源        number year
课程示例来源 1990 103911.9 1990
课程示例来源 1991 106298.3 1991
课程示例来源 1992 108802.2 1992
课程示例来源 1993 111790.2 1993
课程示例来源 1994 113141.8 1994
课程示例来源 1995 114088.0 1995
head(Female_Age_standardized)
课程示例来源    ASR year
课程示例来源 1 4.91 1990
课程示例来源 2 4.92 1991
课程示例来源 3 4.93 1992
课程示例来源 4 4.96 1993
课程示例来源 5 4.91 1994
课程示例来源 6 4.85 1995

通过男性和女性数据计算总体发病情况

GBD_Global_Both_n <- GBD_Global_Female_n + GBD_Global_Male_n
Both_Age_count <- Female_Age_count + Male_Age_count
Both_Age_rate <- Both_Age_count/GBD_Global_Both_n*10^5

Both_Age_standardized <- matrix(nrow =0, ncol = 2) %>% as.data.frame()
names(Both_Age_standardized) <- c("ASR","year")

for (i in 1:ncol(Both_Age_count)) {
  asr = ageadjust.direct(count = Both_Age_count[,i], pop = GBD_Global_Both_n[,i],
                         stdpop = wstand)
  Both_Age_standardized[i,1:2] <- c(round(100000*asr, 2)[2],names(Both_Age_count)[i]) ##rate per 100,000 per year
}

Both_sum_year <- (Male_sum_year[,1] + Female_sum_year[,1]) %>% as.data.frame()
colnames(Both_sum_year) <- 'number'
Both_sum_year$year <- rownames(Female_sum_year)


head(Both_Age_rate)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1228672 0.1225456 0.1221212 0.1213478 0.1230662 0.1241117 0.1232336
课程示例来源 25 to 29 0.1964086 0.1970268 0.1981200 0.1979681 0.2078336 0.2148002 0.2154457
课程示例来源 30 to 34 0.4221901 0.4192808 0.4192911 0.4205690 0.4365802 0.4523477 0.4602478
课程示例来源 35 to 39 1.1367393 1.1374061 1.1300035 1.1116256 1.0872846 1.0651082 1.0432404
课程示例来源               1997      1998      1999      2000      2001      2002      2003
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1240406 0.1250968 0.1251028 0.1241776 0.1216136 0.1175075 0.1138305
课程示例来源 25 to 29 0.2179776 0.2229635 0.2259610 0.2266509 0.2236240 0.2117755 0.2015109
课程示例来源 30 to 34 0.4675566 0.4761757 0.4829912 0.4915587 0.4920703 0.4738772 0.4675385
课程示例来源 35 to 39 1.0432445 1.0610654 1.0970647 1.1427916 1.1761170 1.2045411 1.2178346
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 15 to 19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
课程示例来源 20 to 24 0.1135252 0.1131795 0.1108932 0.1097491 0.1093648 0.1074649 0.1061976
课程示例来源 25 to 29 0.1977264 0.1940387 0.1858360 0.1790577 0.1781793 0.1787413 0.1785945
课程示例来源 30 to 34 0.4647600 0.4445258 0.4174378 0.3981807 0.3901364 0.3858331 0.3778591
课程示例来源 35 to 39 1.2246797 1.1955829 1.1428626 1.0909617 1.0444022 0.9919293 0.9471124
课程示例来源               2011       2012       2013       2014       2015       2016
课程示例来源 0 to 14  0.0000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.0000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.1026417 0.09752058 0.09438524 0.09156285 0.08943835 0.08924767
课程示例来源 25 to 29 0.1737521 0.16670086 0.16346855 0.15812809 0.15425168 0.15323561
课程示例来源 30 to 34 0.3599050 0.34231118 0.33604693 0.33226413 0.32760387 0.32856504
课程示例来源 35 to 39 0.8876441 0.83854701 0.81699529 0.80529812 0.79056413 0.78323139
课程示例来源                2017       2018       2019       2020       2021       2022
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.09009439 0.09275936 0.09350699 0.08451304 0.08234835 0.08018348
课程示例来源 25 to 29 0.15396877 0.15822994 0.15997764 0.15622996 0.15633430 0.15643771
课程示例来源 30 to 34 0.33384817 0.34440080 0.34989863 0.33985207 0.34081107 0.34182434
课程示例来源 35 to 39 0.79152651 0.81374536 0.82306029 0.79718051 0.79599699 0.79478588
课程示例来源                2023       2024      2025       2026       2027       2028
课程示例来源 0 to 14  0.00000000 0.00000000 0.0000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.0000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.07869903 0.07721455 0.0757301 0.07424569 0.07276138 0.07183451
课程示例来源 25 to 29 0.15389625 0.15135480 0.1488129 0.14627031 0.14372679 0.14212530
课程示例来源 30 to 34 0.34186584 0.34194774 0.3420604 0.34219329 0.34233418 0.33927125
课程示例来源 35 to 39 0.79837139 0.80189096 0.8054373 0.80909550 0.81294667 0.81647326
课程示例来源                2029       2030       2031       2032       2033       2034
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.07090791 0.06998147 0.06905509 0.06812867 0.06768353 0.06723847
课程示例来源 25 to 29 0.14052341 0.13892118 0.13731864 0.13571585 0.13494178 0.13416755
课程示例来源 30 to 34 0.33624004 0.33321749 0.33018173 0.32711213 0.32567474 0.32421857
课程示例来源 35 to 39 0.82015435 0.82395418 0.82783324 0.83174568 0.82907590 0.82653563
课程示例来源               2035       2036       2037       2038       2039       2040
课程示例来源 0 to 14  0.0000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.0000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.0667934 0.06634823 0.06590283 0.06546936 0.06503592 0.06460259
课程示例来源 25 to 29 0.1333932 0.13261892 0.13184462 0.13108812 0.13033160 0.12957509
课程示例来源 30 to 34 0.3227441 0.32125151 0.31974118 0.31823664 0.31670748 0.31516397
课程示例来源 35 to 39 0.8240376 0.82149708 0.81883270 0.81609674 0.81328853 0.81040902
课程示例来源                2041       2042       2043       2044
课程示例来源 0 to 14  0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 15 to 19 0.00000000 0.00000000 0.00000000 0.00000000
课程示例来源 20 to 24 0.06416942 0.06373653 0.06330341 0.06287027
课程示例来源 25 to 29 0.12881859 0.12806212 0.12730562 0.12654911
课程示例来源 30 to 34 0.31361580 0.31207206 0.31052840 0.30897944
课程示例来源 35 to 39 0.80745881 0.80443856 0.80132077 0.79810567
head(Both_Age_count)
课程示例来源               1990      1991      1992      1993      1994      1995      1996
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  605.3369  609.9355  612.2610  611.2744  621.5385  627.4266  622.7393
课程示例来源 25 to 29  869.7823  898.1115  925.3518  941.3359 1001.4519 1046.1725 1060.4885
课程示例来源 30 to 34 1628.0871 1640.3526 1676.1226 1733.2658 1862.6675 1995.5242 2089.1350
课程示例来源 35 to 39 4009.7609 4107.9657 4162.1140 4149.8815 4098.6233 4055.7162 4034.3839
课程示例来源               1997      1998      1999      2000      2001     2002     2003
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.000    0.000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.000    0.000
课程示例来源 20 to 24  626.9898  633.8212  637.4216  638.7468  634.1256  623.053  614.832
课程示例来源 25 to 29 1082.0711 1113.6731 1133.2259 1139.2542 1124.3327 1065.312 1016.166
课程示例来源 30 to 34 2173.2110 2251.3261 2312.3125 2377.9933 2406.7547 2339.370 2324.638
课程示例来源 35 to 39 4128.2162 4334.9597 4645.2794 5007.5409 5303.2357 5560.476 5717.421
课程示例来源               2004      2005      2006      2007      2008      2009      2010
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  624.9077  635.3177  636.3292  644.6113  656.4497  656.4790  656.5106
课程示例来源 25 to 29 1002.6073  992.8479  963.5738  944.0507  956.5895  976.9933  994.6604
课程示例来源 30 to 34 2322.4011 2227.7577 2093.9102 1999.8908 1965.1930 1954.0050 1930.3461
课程示例来源 35 to 39 5821.9853 5743.6026 5552.3856 5351.9861 5162.0455 4927.6980 4719.8389
课程示例来源               2011      2012      2013      2014      2015      2016      2017
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  637.4102  604.5327  581.5095  559.5447  542.0967  537.7681  541.1063
课程示例来源 25 to 29  988.3961  969.4487  970.7566  955.7998  944.0390  942.3756  945.3754
课程示例来源 30 to 34 1861.8140 1798.2873 1795.9233 1807.6185 1816.2604 1860.6755 1932.6914
课程示例来源 35 to 39 4427.8498 4186.7409 4089.6717 4053.3780 4015.2130 4028.6563 4134.5072
课程示例来源               2018      2019      2020      2021      2022      2023      2024
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  556.4496  561.1770  513.9417  502.8370  491.8633  485.1357  478.5406
课程示例来源 25 to 29  965.6506  968.6168  947.4255  941.9545  939.8478  925.1483  911.8260
课程示例来源 30 to 34 2035.8697 2105.4536 2060.4018 2078.7434 2090.3746 2086.3639 2074.4751
课程示例来源 35 to 39 4324.1372 4452.5596 4455.0008 4543.5546 4615.3156 4699.7316 4775.5994
课程示例来源               2025      2026      2027      2028      2029      2030      2031
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  472.0644  465.6864  459.3812  456.7840  454.3693  451.9275  449.2595
课程示例来源 25 to 29  899.4993  887.8078  876.4128  870.9638  865.8222  860.9711  856.3839
课程示例来源 30 to 34 2059.7982 2047.4185 2042.4254 2025.5033 2011.8265 2000.4879 1990.6171
课程示例来源 35 to 39 4840.7127 4892.7623 4929.3568 4940.9633 4934.0102 4920.3649 4912.1002
课程示例来源               2032      2033      2034      2035      2036      2037      2038
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  446.1739  445.8506  445.2373  444.2501  442.7998  441.3224  437.9962
课程示例来源 25 to 29  852.0222  853.3046  855.0162  856.7734  858.1966  858.9125  859.0419
课程示例来源 30 to 34 1981.3714 1982.6142 1984.5924 1987.2899 1990.6615 1994.6365 1999.7992
课程示例来源 35 to 39 4921.4963 4909.2519 4905.2649 4907.2781 4913.0727 4920.4564 4929.1077
课程示例来源               2039      2040      2041      2042      2043      2044
课程示例来源 0 to 14     0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 15 to 19    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000
课程示例来源 20 to 24  434.1430  429.9807  425.6631  420.9215  417.4340  413.6488
课程示例来源 25 to 29  858.6188  857.4830  855.4614  853.3980  847.5903  840.7552
课程示例来源 30 to 34 2005.8503 2011.9500 2017.2625 2020.9623 2023.0291 2023.7825
课程示例来源 35 to 39 4939.5199 4951.6504 4965.3781 4980.5215 4998.0027 5017.5586
head(Both_sum_year)
课程示例来源     number year
课程示例来源 1 319968.7 1990
课程示例来源 2 328435.0 1991
课程示例来源 3 335912.7 1992
课程示例来源 4 345447.7 1993
课程示例来源 5 351476.1 1994
课程示例来源 6 358046.3 1995
head(Both_Age_standardized)
课程示例来源    ASR year
课程示例来源 1 8.07 1990
课程示例来源 2  8.1 1991
课程示例来源 3  8.1 1992
课程示例来源 4 8.16 1993
课程示例来源 5 8.12 1994
课程示例来源 6  8.1 1995

##双坐标轴图形绘制

####### plot for prediction
Both_sum_year$sex <- 'Both'
Female_sum_year$sex <- 'Female'
Male_sum_year$sex <- 'Male'

Both_Age_standardized$sex <- 'Both'
Female_Age_standardized$sex <- 'Female'
Male_Age_standardized$sex <- 'Male'

ASR <- rbind(Both_Age_standardized,Female_Age_standardized,Male_Age_standardized)
Num <- rbind(Both_sum_year,Female_sum_year,Male_sum_year)
ASR$ASR <- as.numeric(ASR$ASR)
ASR$year <- as.numeric(ASR$year)
Num$number <- as.numeric(Num$number)
Num$year <- as.numeric(Num$year)
  
ratio <-max(ASR$ASR)/max(Num$number)

p <- ggplot(Num,aes(year,number))+
    geom_col(aes(fill=sex),position = 'dodge',width = 0.8)+
    labs(title = NULL,x='Year',y='Number of cases') +
    theme_bw() +
    theme(plot.title=element_text(hjust=0.5),
          axis.text.x=element_text(angle=45,size=8,color='black'),
          axis.text.y=element_text(size=8,color='black'),
          axis.title.y = element_text(size = 10),
          axis.title.x = element_text(size = 10),
          strip.background.x = element_rect(fill = 'skyblue3'),
          title = element_text(size = 10, hjust = 0.5),
          legend.position = 'right') +
    geom_line(data=ASR,
              aes(x=year,y=ASR/ratio,
                  color=sex)) + 
  scale_x_continuous(expand=c(0,0))
    scale_y_continuous(expand=c(0,0),sec.axis = sec_axis(~.*ratio,
                                           name="Age-standardized rate (per 100000 populations)"))
课程示例来源 <ScaleContinuousPosition>
课程示例来源  Range:  
课程示例来源  Limits:    0 --    1