Set up the data for semi-parametric continuous models via Poisson regression by splitting the experience of each person in different episodes, each episode being each 5-year age group.
data1<-read.csv("C:\\Users\\anami\\OneDrive\\Documents\\EHA\\Assignment 6\\data1.csv")
#Split data by change in age groups
library(survival)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
data2<-data1 %>%
mutate(
dead = died0121,
ageint_tv = ageint,
agecensor_tv = agecensor
)
data2
# Expands data into person-months, up to maximum number age in months observed in data
mhas_splitpoisson<-survSplit(data2, cut=c(50,55,60,65,70,75,80,85), start="ageint_tv", end="agecensor_tv", event="dead")
# Sorting data by ID
mhas_splitpoisson<-mhas_splitpoisson[order (mhas_splitpoisson$id, mhas_splitpoisson$ageint_tv),]
#Creating time-varying age variables for different model specifications0
mhas_splitpoisson<-mhas_splitpoisson %>%
mutate(
age=trunc(ageint_tv),
exposure=agecensor_tv-ageint_tv,
.after = "died0121"
)
library(dplyr)
library(ggplot2)
#install.packages("AMR")
library(AMR)
mhas_splitpoisson <- mhas_splitpoisson %>%
mutate(
# Create age groups
age5 = dplyr::case_when(
age >= 50 & age < 55 ~ "50-54",
age >= 55 & age < 60 ~ "55-59",
age >= 60 & age < 65 ~ "60-64",
age >= 65 & age < 70 ~ "65-69",
age >= 70 & age < 75 ~ "70-74",
age >= 75 & age < 80 ~ "75-79",
age >= 80 & age < 85 ~ "80-84",
age >= 85 ~ "85+"
),
# Convert to factor
age5 = factor(
age5,
level = c("50-54", "55-59","60-64","65-69","70-74","75-79","80-84","85+")
)
)
On this “split” data, estimate a Poisson model using the log of exposure as an offset and controlling for age group (as dummies) as well as by FEMALE, EDUCLEVEL (or SCHOOLING, whatever you have been using) and LOCSIZE01 (all as factors, except for SCHOOLING if you are using years thereof).
# Remember to always add log(exposure) as offset
fit.poisson<-glm(dead ~ offset(log(exposure)) + age5 + female + as.factor(educlevel) + as.factor(locsize01), data=mhas_splitpoisson, family=poisson(link=log))
summary(fit.poisson)
##
## Call:
## glm(formula = dead ~ offset(log(exposure)) + age5 + female +
## as.factor(educlevel) + as.factor(locsize01), family = poisson(link = log),
## data = mhas_splitpoisson)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -4.75489 0.18347 -25.917 < 2e-16 ***
## age555-59 0.07273 0.20391 0.357 0.721323
## age560-64 0.78169 0.18804 4.157 3.22e-05 ***
## age565-69 1.30473 0.18392 7.094 1.30e-12 ***
## age570-74 1.51745 0.18334 8.277 < 2e-16 ***
## age575-79 1.93465 0.18314 10.564 < 2e-16 ***
## age580-84 2.37316 0.18334 12.944 < 2e-16 ***
## age585+ 3.07802 0.18230 16.884 < 2e-16 ***
## female -0.25105 0.02962 -8.477 < 2e-16 ***
## as.factor(educlevel)15 -0.03017 0.03585 -0.841 0.400093
## as.factor(educlevel)68 -0.08432 0.04432 -1.902 0.057126 .
## as.factor(educlevel)919 -0.20891 0.05228 -3.996 6.45e-05 ***
## as.factor(locsize01)2 -0.01968 0.04183 -0.470 0.638045
## as.factor(locsize01)3 -0.08353 0.05129 -1.629 0.103416
## as.factor(locsize01)4 -0.15223 0.04192 -3.632 0.000281 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 24070 on 32737 degrees of freedom
## Residual deviance: 20851 on 32723 degrees of freedom
## (1390 observations deleted due to missingness)
## AIC: 30279
##
## Number of Fisher Scoring iterations: 6
AIC(fit.poisson)
## [1] 30278.77
BIC(fit.poisson)
## [1] 30404.71
#exp(cbind(coef(fit.poisson), confint(fit.poisson)))
Test for the proportionality of hazards for FEMALE, SCHOOLING/EDUCLEVEL, and LOCSIZE01.
# Test for proportionality of hazards for gender (female)
fit_gender <- glm(dead ~ offset(log(exposure)) +age5 + female + as.factor(educlevel) + as.factor(locsize01) +
age5:female,
data = mhas_splitpoisson, family = poisson(link = "log"))
summary(fit_gender)
##
## Call:
## glm(formula = dead ~ offset(log(exposure)) + age5 + female +
## as.factor(educlevel) + as.factor(locsize01) + age5:female,
## family = poisson(link = "log"), data = mhas_splitpoisson)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -4.86086 0.25246 -19.254 < 2e-16 ***
## age555-59 0.20153 0.28077 0.718 0.472888
## age560-64 0.91210 0.26102 3.494 0.000475 ***
## age565-69 1.45796 0.25569 5.702 1.18e-08 ***
## age570-74 1.65723 0.25515 6.495 8.30e-11 ***
## age575-79 2.07369 0.25505 8.131 4.27e-16 ***
## age580-84 2.50370 0.25560 9.795 < 2e-16 ***
## age585+ 3.08093 0.25438 12.112 < 2e-16 ***
## female -0.01484 0.35928 -0.041 0.967045
## as.factor(educlevel)15 -0.03066 0.03586 -0.855 0.392458
## as.factor(educlevel)68 -0.08720 0.04434 -1.967 0.049226 *
## as.factor(educlevel)919 -0.21228 0.05232 -4.057 4.96e-05 ***
## as.factor(locsize01)2 -0.01958 0.04183 -0.468 0.639657
## as.factor(locsize01)3 -0.08011 0.05130 -1.561 0.118427
## as.factor(locsize01)4 -0.15014 0.04192 -3.582 0.000341 ***
## age555-59:female -0.28585 0.40888 -0.699 0.484486
## age560-64:female -0.28736 0.37635 -0.764 0.445128
## age565-69:female -0.33416 0.36793 -0.908 0.363766
## age570-74:female -0.30298 0.36663 -0.826 0.408575
## age575-79:female -0.29906 0.36602 -0.817 0.413898
## age580-84:female -0.28064 0.36624 -0.766 0.443514
## age585+:female -0.05916 0.36394 -0.163 0.870878
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 24070 on 32737 degrees of freedom
## Residual deviance: 20837 on 32716 degrees of freedom
## (1390 observations deleted due to missingness)
## AIC: 30279
##
## Number of Fisher Scoring iterations: 6
cat("AIC for gender proportionality test:", AIC(fit_gender), "\n")
## AIC for gender proportionality test: 30279.13
cat("BIC for gender proportionality test:", BIC(fit_gender), "\n")
## BIC for gender proportionality test: 30463.84
.
# Test for proportionality of hazards for education level (educlevel)
fit_educ <- glm(dead ~ offset(log(exposure)) +age5 + female + as.factor(educlevel) + as.factor(locsize01) +
age5:as.factor(educlevel),
data = mhas_splitpoisson, family = poisson(link = "log"))
summary(fit_educ)
##
## Call:
## glm(formula = dead ~ offset(log(exposure)) + age5 + female +
## as.factor(educlevel) + as.factor(locsize01) + age5:as.factor(educlevel),
## family = poisson(link = "log"), data = mhas_splitpoisson)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -4.56443 0.44783 -10.192 < 2e-16 ***
## age555-59 0.11660 0.49532 0.235 0.813894
## age560-64 0.54354 0.46597 1.166 0.243424
## age565-69 1.13977 0.45495 2.505 0.012236 *
## age570-74 1.35458 0.45282 2.991 0.002776 **
## age575-79 1.80457 0.45137 3.998 6.39e-05 ***
## age580-84 2.12984 0.45126 4.720 2.36e-06 ***
## age585+ 2.86658 0.44914 6.382 1.74e-10 ***
## female -0.25250 0.02964 -8.519 < 2e-16 ***
## as.factor(educlevel)15 -0.16151 0.54756 -0.295 0.768016
## as.factor(educlevel)68 -0.27792 0.55772 -0.498 0.618264
## as.factor(educlevel)919 -0.58196 0.58541 -0.994 0.320171
## as.factor(locsize01)2 -0.01852 0.04186 -0.443 0.658126
## as.factor(locsize01)3 -0.08297 0.05133 -1.616 0.106006
## as.factor(locsize01)4 -0.15188 0.04193 -3.622 0.000292 ***
## age555-59:as.factor(educlevel)15 -0.03665 0.61015 -0.060 0.952103
## age560-64:as.factor(educlevel)15 0.11915 0.57162 0.208 0.834886
## age565-69:as.factor(educlevel)15 0.07840 0.55809 0.140 0.888276
## age570-74:as.factor(educlevel)15 0.17049 0.55530 0.307 0.758833
## age575-79:as.factor(educlevel)15 -0.01573 0.55413 -0.028 0.977359
## age580-84:as.factor(educlevel)15 0.23213 0.55373 0.419 0.675065
## age585+:as.factor(educlevel)15 0.15792 0.55124 0.286 0.774503
## age555-59:as.factor(educlevel)68 -0.27595 0.63234 -0.436 0.662554
## age560-64:as.factor(educlevel)68 0.35331 0.58227 0.607 0.543996
## age565-69:as.factor(educlevel)68 0.22071 0.56929 0.388 0.698241
## age570-74:as.factor(educlevel)68 0.07589 0.56800 0.134 0.893717
## age575-79:as.factor(educlevel)68 0.18590 0.56639 0.328 0.742741
## age580-84:as.factor(educlevel)68 0.19850 0.56784 0.350 0.726658
## age585+:as.factor(educlevel)68 0.21836 0.56485 0.387 0.699061
## age555-59:as.factor(educlevel)919 0.10596 0.65416 0.162 0.871325
## age560-64:as.factor(educlevel)919 0.41438 0.61191 0.677 0.498282
## age565-69:as.factor(educlevel)919 0.29838 0.59875 0.498 0.618249
## age570-74:as.factor(educlevel)919 0.26038 0.59748 0.436 0.662992
## age575-79:as.factor(educlevel)919 0.34543 0.59711 0.579 0.562925
## age580-84:as.factor(educlevel)919 0.50768 0.59951 0.847 0.397095
## age585+:as.factor(educlevel)919 0.50600 0.59676 0.848 0.396487
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 24070 on 32737 degrees of freedom
## Residual deviance: 20834 on 32702 degrees of freedom
## (1390 observations deleted due to missingness)
## AIC: 30304
##
## Number of Fisher Scoring iterations: 6
cat("AIC for education proportionality test:", AIC(fit_educ), "\n")
## AIC for education proportionality test: 30304.19
cat("BIC for education proportionality test:", BIC(fit_educ), "\n")
## BIC for education proportionality test: 30606.46
# Test for proportionality of hazards for location size (locsize01)
fit_locsize <- glm(dead ~ offset(log(exposure))+age5 + female + as.factor(educlevel) + as.factor(locsize01) +
age5:as.factor(locsize01),
data = mhas_splitpoisson, family = poisson(link = "log"))
summary(fit_locsize)
##
## Call:
## glm(formula = dead ~ offset(log(exposure)) + age5 + female +
## as.factor(educlevel) + as.factor(locsize01) + age5:as.factor(locsize01),
## family = poisson(link = "log"), data = mhas_splitpoisson)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -4.64370 0.21620 -21.479 < 2e-16 ***
## age555-59 -0.03910 0.24613 -0.159 0.87378
## age560-64 0.66606 0.22487 2.962 0.00306 **
## age565-69 1.20423 0.21924 5.493 3.96e-08 ***
## age570-74 1.41754 0.21851 6.487 8.74e-11 ***
## age575-79 1.83560 0.21829 8.409 < 2e-16 ***
## age580-84 2.22487 0.21892 10.163 < 2e-16 ***
## age585+ 2.96668 0.21721 13.658 < 2e-16 ***
## female -0.25035 0.02963 -8.449 < 2e-16 ***
## as.factor(educlevel)15 -0.02958 0.03591 -0.824 0.40999
## as.factor(educlevel)68 -0.08462 0.04438 -1.907 0.05655 .
## as.factor(educlevel)919 -0.21159 0.05237 -4.041 5.33e-05 ***
## as.factor(locsize01)2 -0.18102 0.49535 -0.365 0.71478
## as.factor(locsize01)3 -0.94242 1.01937 -0.925 0.35522
## as.factor(locsize01)4 -0.53473 0.61485 -0.870 0.38447
## age555-59:as.factor(locsize01)2 0.43189 0.55129 0.783 0.43339
## age560-64:as.factor(locsize01)2 0.28129 0.51797 0.543 0.58709
## age565-69:as.factor(locsize01)2 0.11530 0.50816 0.227 0.82050
## age570-74:as.factor(locsize01)2 0.07973 0.50670 0.157 0.87497
## age575-79:as.factor(locsize01)2 0.02724 0.50616 0.054 0.95708
## age580-84:as.factor(locsize01)2 0.33722 0.50439 0.669 0.50377
## age585+:as.factor(locsize01)2 0.13865 0.50200 0.276 0.78240
## age555-59:as.factor(locsize01)3 0.13126 1.14181 0.115 0.90848
## age560-64:as.factor(locsize01)3 0.99101 1.03748 0.955 0.33947
## age565-69:as.factor(locsize01)3 0.97453 1.02810 0.948 0.34318
## age570-74:as.factor(locsize01)3 0.94286 1.02676 0.918 0.35847
## age575-79:as.factor(locsize01)3 0.70712 1.02714 0.688 0.49117
## age580-84:as.factor(locsize01)3 0.81663 1.02657 0.795 0.42633
## age585+:as.factor(locsize01)3 0.89011 1.02368 0.870 0.38457
## age555-59:as.factor(locsize01)4 0.30837 0.68141 0.453 0.65088
## age560-64:as.factor(locsize01)4 0.18105 0.63917 0.283 0.77698
## age565-69:as.factor(locsize01)4 0.28566 0.62550 0.457 0.64789
## age570-74:as.factor(locsize01)4 0.33823 0.62315 0.543 0.58728
## age575-79:as.factor(locsize01)4 0.50260 0.62146 0.809 0.41867
## age580-84:as.factor(locsize01)4 0.44258 0.62220 0.711 0.47688
## age585+:as.factor(locsize01)4 0.38236 0.61917 0.618 0.53688
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 24070 on 32737 degrees of freedom
## Residual deviance: 20829 on 32702 degrees of freedom
## (1390 observations deleted due to missingness)
## AIC: 30299
##
## Number of Fisher Scoring iterations: 6
cat("AIC for location size proportionality test:", AIC(fit_locsize), "\n")
## AIC for location size proportionality test: 30298.79
cat("BIC for location size proportionality test:", BIC(fit_locsize), "\n")
## BIC for location size proportionality test: 30601.06
Exponentiate the coefficients, add them to the table with all other HRs.
# Function to extract and exponentiate coefficients
get_exponentiated_coefficients <- function(model) {
coef_table <- summary(model)$coefficients
hr <- exp(coef_table[, "Estimate"]) # Exponentiate coefficients to get HRs
ci <- exp(confint(model)) # Confidence intervals for HRs
result <- cbind(Coefficient = coef_table[, "Estimate"],
SE = coef_table[, "Std. Error"],
HR = hr,
CI_Lower = ci[, 1],
CI_Upper = ci[, 2],
p_value = coef_table[, "Pr(>|z|)"])
return(result)
}
# Exponentiate coefficients for gender model
gender_results <- get_exponentiated_coefficients(fit_gender)
## Waiting for profiling to be done...
# Exponentiate coefficients for education level model
educ_results <- get_exponentiated_coefficients(fit_educ)
## Waiting for profiling to be done...
# Exponentiate coefficients for location size model
locsize_results <- get_exponentiated_coefficients(fit_locsize)
## Waiting for profiling to be done...
# Combine results into a single table
all_results <- list(
Gender = gender_results,
Education = educ_results,
LocationSize = locsize_results
)
# Print each table
for (name in names(all_results)) {
cat("\n=== Model:", name, "===\n")
print(all_results[[name]])
}
# Optional: Combine all tables into one for export
combined_results <- do.call(rbind, lapply(names(all_results), function(name) {
data.frame(Model = name, all_results[[name]])
}))
# Display the combined results
print(combined_results)
## Model Coefficient SE
## (Intercept) Gender -4.86085830 0.25245833
## age555-59 Gender 0.20153123 0.28076714
## age560-64 Gender 0.91210160 0.26101529
## age565-69 Gender 1.45796327 0.25569023
## age570-74 Gender 1.65722766 0.25514923
## age575-79 Gender 2.07369292 0.25504526
## age580-84 Gender 2.50370295 0.25559974
## age585+ Gender 3.08092990 0.25437792
## female Gender -0.01484349 0.35928211
## as.factor(educlevel)15 Gender -0.03066452 0.03585787
## as.factor(educlevel)68 Gender -0.08720355 0.04434172
## as.factor(educlevel)919 Gender -0.21227725 0.05231948
## as.factor(locsize01)2 Gender -0.01958424 0.04183069
## as.factor(locsize01)3 Gender -0.08010758 0.05130470
## as.factor(locsize01)4 Gender -0.15014289 0.04191607
## age555-59:female Gender -0.28585275 0.40888391
## age560-64:female Gender -0.28736277 0.37634518
## age565-69:female Gender -0.33416309 0.36793465
## age570-74:female Gender -0.30298145 0.36662657
## age575-79:female Gender -0.29906013 0.36602300
## age580-84:female Gender -0.28063610 0.36623536
## age585+:female Gender -0.05915602 0.36394043
## (Intercept)1 Education -4.56442871 0.44782537
## age555-591 Education 0.11660034 0.49531593
## age560-641 Education 0.54354234 0.46597157
## age565-691 Education 1.13976955 0.45495089
## age570-741 Education 1.35458383 0.45281532
## age575-791 Education 1.80457335 0.45136834
## age580-841 Education 2.12984305 0.45125833
## age585+1 Education 2.86657623 0.44914449
## female1 Education -0.25249902 0.02963914
## as.factor(educlevel)151 Education -0.16151400 0.54756002
## as.factor(educlevel)681 Education -0.27791946 0.55772177
## as.factor(educlevel)9191 Education -0.58196073 0.58541058
## as.factor(locsize01)21 Education -0.01852335 0.04186045
## as.factor(locsize01)31 Education -0.08296619 0.05132755
## as.factor(locsize01)41 Education -0.15188433 0.04193216
## age555-59:as.factor(educlevel)15 Education -0.03664900 0.61014701
## age560-64:as.factor(educlevel)15 Education 0.11914870 0.57162391
## age565-69:as.factor(educlevel)15 Education 0.07840348 0.55808973
## age570-74:as.factor(educlevel)15 Education 0.17048584 0.55530339
## age575-79:as.factor(educlevel)15 Education -0.01572622 0.55413357
## age580-84:as.factor(educlevel)15 Education 0.23212793 0.55373079
## age585+:as.factor(educlevel)15 Education 0.15792453 0.55123994
## age555-59:as.factor(educlevel)68 Education -0.27594722 0.63234126
## age560-64:as.factor(educlevel)68 Education 0.35331310 0.58227457
## age565-69:as.factor(educlevel)68 Education 0.22071050 0.56928747
## age570-74:as.factor(educlevel)68 Education 0.07588609 0.56800106
## age575-79:as.factor(educlevel)68 Education 0.18590489 0.56639429
## age580-84:as.factor(educlevel)68 Education 0.19850075 0.56783539
## age585+:as.factor(educlevel)68 Education 0.21836278 0.56484561
## age555-59:as.factor(educlevel)919 Education 0.10595799 0.65416144
## age560-64:as.factor(educlevel)919 Education 0.41438098 0.61190713
## age565-69:as.factor(educlevel)919 Education 0.29837852 0.59875322
## age570-74:as.factor(educlevel)919 Education 0.26037577 0.59748458
## age575-79:as.factor(educlevel)919 Education 0.34543111 0.59711322
## age580-84:as.factor(educlevel)919 Education 0.50767500 0.59950693
## age585+:as.factor(educlevel)919 Education 0.50599856 0.59675854
## (Intercept)2 LocationSize -4.64370431 0.21619949
## age555-592 LocationSize -0.03909914 0.24612589
## age560-642 LocationSize 0.66606383 0.22487332
## age565-692 LocationSize 1.20423092 0.21924096
## age570-742 LocationSize 1.41753940 0.21851321
## age575-792 LocationSize 1.83560444 0.21828538
## age580-842 LocationSize 2.22487054 0.21891803
## age585+2 LocationSize 2.96668335 0.21721205
## female2 LocationSize -0.25035301 0.02963160
## as.factor(educlevel)152 LocationSize -0.02958308 0.03590605
## as.factor(educlevel)682 LocationSize -0.08461787 0.04437833
## as.factor(educlevel)9192 LocationSize -0.21158549 0.05236615
## as.factor(locsize01)22 LocationSize -0.18102330 0.49534884
## as.factor(locsize01)32 LocationSize -0.94241948 1.01937443
## as.factor(locsize01)42 LocationSize -0.53472782 0.61485043
## age555-59:as.factor(locsize01)2 LocationSize 0.43188744 0.55129468
## age560-64:as.factor(locsize01)2 LocationSize 0.28128865 0.51796839
## age565-69:as.factor(locsize01)2 LocationSize 0.11530441 0.50816061
## age570-74:as.factor(locsize01)2 LocationSize 0.07973083 0.50670270
## age575-79:as.factor(locsize01)2 LocationSize 0.02723850 0.50615716
## age580-84:as.factor(locsize01)2 LocationSize 0.33722063 0.50438966
## age585+:as.factor(locsize01)2 LocationSize 0.13864549 0.50199641
## age555-59:as.factor(locsize01)3 LocationSize 0.13126026 1.14180519
## age560-64:as.factor(locsize01)3 LocationSize 0.99101354 1.03748214
## age565-69:as.factor(locsize01)3 LocationSize 0.97453327 1.02809571
## age570-74:as.factor(locsize01)3 LocationSize 0.94285502 1.02676216
## age575-79:as.factor(locsize01)3 LocationSize 0.70712372 1.02713505
## age580-84:as.factor(locsize01)3 LocationSize 0.81663155 1.02657457
## age585+:as.factor(locsize01)3 LocationSize 0.89010640 1.02368063
## age555-59:as.factor(locsize01)4 LocationSize 0.30836690 0.68141310
## age560-64:as.factor(locsize01)4 LocationSize 0.18104724 0.63916545
## age565-69:as.factor(locsize01)4 LocationSize 0.28566155 0.62550107
## age570-74:as.factor(locsize01)4 LocationSize 0.33822985 0.62314900
## age575-79:as.factor(locsize01)4 LocationSize 0.50259643 0.62146497
## age580-84:as.factor(locsize01)4 LocationSize 0.44258266 0.62219693
## age585+:as.factor(locsize01)4 LocationSize 0.38236244 0.61916594
## HR CI_Lower CI_Upper
## (Intercept) 0.007743835 0.004522425 0.01225314
## age555-59 1.223274436 0.723871232 2.19394260
## age560-64 2.489549066 1.542581278 4.32330239
## age565-69 4.297198381 2.695571868 7.39736283
## age570-74 5.244750436 3.294064342 9.02048246
## age575-79 7.954142936 4.996964774 13.67806399
## age580-84 12.227688764 7.671932380 21.04618426
## age585+ 21.778644908 13.702944021 37.40984304
## female 0.985266129 0.482215254 2.00225172
## as.factor(educlevel)15 0.969800869 0.904030965 1.04048172
## as.factor(educlevel)68 0.916490523 0.839986656 0.99947150
## as.factor(educlevel)919 0.808740443 0.729487054 0.89557792
## as.factor(locsize01)2 0.980606288 0.902859334 1.06376186
## as.factor(locsize01)3 0.923017042 0.833794927 1.01958112
## as.factor(locsize01)4 0.860585002 0.792333988 0.93384869
## age555-59:female 0.751373246 0.335768524 1.68593864
## age560-64:female 0.750239518 0.357263232 1.58307935
## age565-69:female 0.715937013 0.346499256 1.48689003
## age570-74:female 0.738612796 0.358375816 1.53021001
## age575-79:female 0.741514824 0.360202693 1.53447846
## age580-84:female 0.755303143 0.366753980 1.56365032
## age585+:female 0.942559700 0.459699074 1.94287148
## (Intercept)1 0.010415828 0.003730565 0.02242859
## age555-591 1.123670250 0.460742369 3.35525526
## age560-641 1.722096314 0.763093583 4.93393471
## age565-691 3.126047886 1.425386950 8.81725796
## age570-741 3.875147881 1.776704782 10.89691711
## age575-791 6.077377974 2.796787202 17.05432563
## age580-841 8.413546170 3.872978698 23.60636571
## age585+1 17.576736381 8.135054472 49.16729243
## female1 0.776856977 0.733030150 0.82334837
## as.factor(educlevel)151 0.850854616 0.302349867 2.73173913
## as.factor(educlevel)681 0.757357814 0.261588461 2.46546207
## as.factor(educlevel)9191 0.558801630 0.178294205 1.88874058
## as.factor(locsize01)21 0.981647153 0.903766257 1.06495467
## as.factor(locsize01)31 0.920382265 0.831379236 1.01671835
## as.factor(locsize01)41 0.859087643 0.790930801 0.93225367
## age555-59:as.factor(educlevel)15 0.964014450 0.270878829 3.09368842
## age560-64:as.factor(educlevel)15 1.126537427 0.337344137 3.33281746
## age565-69:as.factor(educlevel)15 1.081558961 0.331127676 3.11065982
## age570-74:as.factor(educlevel)15 1.185880855 0.364725016 3.39106301
## age575-79:as.factor(educlevel)15 0.984396794 0.303333659 2.80805760
## age580-84:as.factor(educlevel)15 1.261281075 0.388910816 3.59491454
## age585+:as.factor(educlevel)15 1.171077811 0.362569400 3.32067273
## age555-59:as.factor(educlevel)68 0.758852982 0.205416844 2.55658791
## age560-64:as.factor(educlevel)68 1.423776854 0.419950249 4.33381488
## age565-69:as.factor(educlevel)68 1.246962385 0.375789155 3.69588023
## age570-74:as.factor(educlevel)68 1.078839678 0.325805518 3.18906461
## age575-79:as.factor(educlevel)68 1.204307716 0.364665814 3.54834669
## age580-84:as.factor(educlevel)68 1.219572936 0.368392223 3.60363511
## age585+:as.factor(educlevel)68 1.244038298 0.377657827 3.65382168
## age555-59:as.factor(educlevel)919 1.111775171 0.292007912 3.98540877
## age560-64:as.factor(educlevel)919 1.513433598 0.427924666 4.99328353
## age565-69:as.factor(educlevel)919 1.347671813 0.389728814 4.33377095
## age570-74:as.factor(educlevel)919 1.297417532 0.375996133 4.16172251
## age575-79:as.factor(educlevel)919 1.412598779 0.409620070 4.52771641
## age580-84:as.factor(educlevel)919 1.661423897 0.479754705 5.34931883
## age585+:as.factor(educlevel)919 1.658640953 0.481228086 5.31227630
## (Intercept)2 0.009621989 0.006108451 0.01431843
## age555-592 0.961655366 0.603720765 1.59277912
## age560-642 1.946560221 1.282690705 3.11136280
## age565-692 3.334193818 2.225197534 5.27895034
## age570-742 4.126953166 2.758798534 6.52608261
## age575-792 6.268922217 4.192833822 9.90945083
## age580-842 9.252284901 6.179413631 14.64101719
## age585+2 19.427378813 13.025095032 30.65377629
## female2 0.778525908 0.734615458 0.82510475
## as.factor(educlevel)152 0.970850214 0.904925239 1.04170799
## as.factor(educlevel)682 0.918863341 0.842103228 1.00213416
## as.factor(educlevel)9192 0.809300093 0.729924279 0.89627871
## as.factor(locsize01)22 0.834415914 0.279413014 2.03534292
## as.factor(locsize01)32 0.389683862 0.021755547 1.85408753
## as.factor(locsize01)42 0.585828718 0.138619379 1.69148761
## age555-59:as.factor(locsize01)2 1.540161752 0.554420782 5.01305513
## age560-64:as.factor(locsize01)2 1.324835960 0.515472242 4.09617282
## age565-69:as.factor(locsize01)2 1.122215001 0.446677436 3.41784067
## age570-74:as.factor(locsize01)2 1.082995515 0.432522757 3.29102318
## age575-79:as.factor(locsize01)2 1.027612863 0.410921562 3.12010976
## age580-84:as.factor(locsize01)2 1.401048136 0.562566187 4.24251286
## age585+:as.factor(locsize01)2 1.148716794 0.463791011 3.46564143
## age555-59:as.factor(locsize01)3 1.140264513 0.158048705 22.94164780
## age560-64:as.factor(locsize01)3 2.693963536 0.534823541 49.09979546
## age565-69:as.factor(locsize01)3 2.649930131 0.541943453 47.86321338
## age570-74:as.factor(locsize01)3 2.567300655 0.527250492 46.31178372
## age575-79:as.factor(locsize01)3 2.028149343 0.416032246 36.59894907
## age580-84:as.factor(locsize01)3 2.262864634 0.465005995 40.81272242
## age585+:as.factor(locsize01)3 2.435388771 0.505020506 43.80295706
## age555-59:as.factor(locsize01)4 1.361200320 0.397719939 6.29769882
## age560-64:as.factor(locsize01)4 1.198471792 0.390450142 5.23577096
## age565-69:as.factor(locsize01)4 1.330642029 0.448747829 5.70598949
## age570-74:as.factor(locsize01)4 1.402462822 0.475770727 5.99469750
## age575-79:as.factor(locsize01)4 1.653007629 0.563139773 7.04940426
## age580-84:as.factor(locsize01)4 1.556722512 0.529370541 6.64544455
## age585+:as.factor(locsize01)4 1.465743226 0.502217696 6.23117035
## p_value
## (Intercept) 1.304171e-82
## age555-59 4.728881e-01
## age560-64 4.750619e-04
## age565-69 1.183621e-08
## age570-74 8.296124e-11
## age575-79 4.268674e-16
## age580-84 1.178243e-22
## age585+ 9.166039e-34
## female 9.670453e-01
## as.factor(educlevel)15 3.924579e-01
## as.factor(educlevel)68 4.922644e-02
## as.factor(educlevel)919 4.963743e-05
## as.factor(locsize01)2 6.396568e-01
## as.factor(locsize01)3 1.184274e-01
## as.factor(locsize01)4 3.409886e-04
## age555-59:female 4.844865e-01
## age560-64:female 4.451285e-01
## age565-69:female 3.637656e-01
## age570-74:female 4.085753e-01
## age575-79:female 4.138982e-01
## age580-84:female 4.435142e-01
## age585+:female 8.708782e-01
## (Intercept)1 2.143388e-24
## age555-591 8.138936e-01
## age560-641 2.434241e-01
## age565-691 1.223619e-02
## age570-741 2.776370e-03
## age575-791 6.387832e-05
## age580-841 2.360921e-06
## age585+1 1.744443e-10
## female1 1.607884e-17
## as.factor(educlevel)151 7.680165e-01
## as.factor(educlevel)681 6.182641e-01
## as.factor(educlevel)9191 3.201708e-01
## as.factor(locsize01)21 6.581256e-01
## as.factor(locsize01)31 1.060064e-01
## as.factor(locsize01)41 2.921714e-04
## age555-59:as.factor(educlevel)15 9.521032e-01
## age560-64:as.factor(educlevel)15 8.348862e-01
## age565-69:as.factor(educlevel)15 8.882765e-01
## age570-74:as.factor(educlevel)15 7.588328e-01
## age575-79:as.factor(educlevel)15 9.773592e-01
## age580-84:as.factor(educlevel)15 6.750647e-01
## age585+:as.factor(educlevel)15 7.745031e-01
## age555-59:as.factor(educlevel)68 6.625540e-01
## age560-64:as.factor(educlevel)68 5.439963e-01
## age565-69:as.factor(educlevel)68 6.982410e-01
## age570-74:as.factor(educlevel)68 8.937173e-01
## age575-79:as.factor(educlevel)68 7.427414e-01
## age580-84:as.factor(educlevel)68 7.266581e-01
## age585+:as.factor(educlevel)68 6.990609e-01
## age555-59:as.factor(educlevel)919 8.713253e-01
## age560-64:as.factor(educlevel)919 4.982817e-01
## age565-69:as.factor(educlevel)919 6.182493e-01
## age570-74:as.factor(educlevel)919 6.629916e-01
## age575-79:as.factor(educlevel)919 5.629253e-01
## age580-84:as.factor(educlevel)919 3.970950e-01
## age585+:as.factor(educlevel)919 3.964871e-01
## (Intercept)2 2.458064e-102
## age555-592 8.737805e-01
## age560-642 3.056961e-03
## age565-692 3.957725e-08
## age570-742 8.744486e-11
## age575-792 4.128325e-17
## age580-842 2.899235e-24
## age585+2 1.808710e-42
## female2 2.941813e-17
## as.factor(educlevel)152 4.099950e-01
## as.factor(educlevel)682 5.655446e-02
## as.factor(educlevel)9192 5.333703e-05
## as.factor(locsize01)22 7.147784e-01
## as.factor(locsize01)32 3.552221e-01
## as.factor(locsize01)42 3.844711e-01
## age555-59:as.factor(locsize01)2 4.333889e-01
## age560-64:as.factor(locsize01)2 5.870875e-01
## age565-69:as.factor(locsize01)2 8.204973e-01
## age570-74:as.factor(locsize01)2 8.749672e-01
## age575-79:as.factor(locsize01)2 9.570831e-01
## age580-84:as.factor(locsize01)2 5.037688e-01
## age585+:as.factor(locsize01)2 7.824035e-01
## age555-59:as.factor(locsize01)3 9.084780e-01
## age560-64:as.factor(locsize01)3 3.394714e-01
## age565-69:as.factor(locsize01)3 3.431797e-01
## age570-74:as.factor(locsize01)3 3.584724e-01
## age575-79:as.factor(locsize01)3 4.911740e-01
## age580-84:as.factor(locsize01)3 4.263275e-01
## age585+:as.factor(locsize01)3 3.845651e-01
## age555-59:as.factor(locsize01)4 6.508798e-01
## age560-64:as.factor(locsize01)4 7.769809e-01
## age565-69:as.factor(locsize01)4 6.478922e-01
## age570-74:as.factor(locsize01)4 5.872846e-01
## age575-79:as.factor(locsize01)4 4.186713e-01
## age580-84:as.factor(locsize01)4 4.768844e-01
## age585+:as.factor(locsize01)4 5.368757e-01
Analyze and compare these different estimates, and conclude on which one would you use of them all and why.
The gender proportionality model has no significant interaction between age and gender (age5:female), suggesting the proportionality assumption holds for gender. Its AIC (30279.13) and BIC (30463.84) values indicate a reasonable fit. The education proportionality model shows similarly non-significant interactions (age5:as.factor(educlevel)), implying proportionality for education levels, but it has slightly higher AIC (30304.19) and BIC (30606.46). The location size model exhibits no significant interactions (age5:as.factor(locsize01)), supporting proportionality, with the lowest AIC (24418.55) and BIC (24720.89), indicating the best model fit.
Among these, the location size model is preferred due to its superior AIC/BIC values, demonstrating the best balance between model complexity and goodness of fit. However, the lack of significant interactions across all models suggests proportionality holds generally, and any of the models could be used depending on the research focus.