2020 excess mortality & voting patterns in CH
Redistributed cantonal deaths
Data
Spatial
= read_rds("data/BfS/kt.Rds")
kt = read_rds("data/BfS/gg.Rds")
gg = read_rds("data/BfS/tg3o.Rds")
tg3o = read_rds("data/BfS/se_alt.Rds")
se_alt = read_rds("data/carto/carto.Rds") carto
Downscaled data
= read_rds("results/exp_deaths_2020_year_gem.Rds") %>%
exp_deaths_2020_year_gem select(-munici_excess_pop, -munici_excess_rat) %>%
mutate(munici_sir = munici_observed / munici_expected_med)
summary(exp_deaths_2020_year_gem$munici_sir)
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
1.000 1.310 1.421 Inf 1.582 Inf 52
Problematic cases
# exp_deaths_2020_year_gem %>%
# filter(is.na(munici_sir)) %>%
# select(munici_observed, munici_expected_med)
# zero and zero
%>%
exp_deaths_2020_year_gem filter(is.nan(munici_sir)) %>%
select(munici_observed, munici_expected_med, munici_sir)
# A tibble: 52 × 3
munici_observed munici_expected_med munici_sir
<int> <dbl> <dbl>
1 0 0 NaN
2 0 0 NaN
3 0 0 NaN
4 0 0 NaN
5 0 0 NaN
6 0 0 NaN
7 0 0 NaN
8 0 0 NaN
9 0 0 NaN
10 0 0 NaN
# … with 42 more rows
# positive and zero
%>%
exp_deaths_2020_year_gem filter(is.infinite(munici_sir)) %>%
select(munici_observed, munici_expected_med, munici_sir)
# A tibble: 49 × 3
munici_observed munici_expected_med munici_sir
<int> <dbl> <dbl>
1 1 0 Inf
2 1 0 Inf
3 1 0 Inf
4 1 0 Inf
5 1 0 Inf
6 1 0 Inf
7 1 0 Inf
8 1 0 Inf
9 1 0 Inf
10 2 0 Inf
# … with 39 more rows
# removed for now
%<>%
exp_deaths_2020_year_gem filter(!is.infinite(munici_sir)) %>%
filter(!is.nan(munici_sir))
SIR
Distribution
Maps
x <categorical>
# total N=2040 valid N=2040 mean=2.98 sd=1.43
Value | N | Raw % | Valid % | Cum. %
--------------------------------------------
[1.00,1.29) | 436 | 21.37 | 21.37 | 21.37
[1.29,1.36) | 389 | 19.07 | 19.07 | 40.44
[1.36,1.48) | 399 | 19.56 | 19.56 | 60.00
[1.48,1.62) | 409 | 20.05 | 20.05 | 80.05
[1.62,5.00] | 407 | 19.95 | 19.95 | 100.00
<NA> | 0 | 0.00 | <NA> | <NA>
Choropleth
Proportional symbols
Symbol size perceptually scaled to number of expected deaths.
Cartogram
tmap_save(carto, "docs/sir.png", width = 1920, height = 1080, asp = 0)
EDA June vote
Map
Correlations
Unweighted
cor.test(exp_deaths_2020_year_gem$munici_sir,
$vote_yes_jun_perc,
exp_deaths_2020_year_gemmethod = "pearson")
Pearson's product-moment correlation
data: exp_deaths_2020_year_gem$munici_sir and exp_deaths_2020_year_gem$vote_yes_jun_perc
t = 5.0156, df = 2038, p-value = 0.0000005745
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.06734542 0.15308706
sample estimates:
cor
0.1104217
Weighted
wtd.cor(exp_deaths_2020_year_gem$munici_sir,
$vote_yes_jun_perc,
exp_deaths_2020_year_gemweight = exp_deaths_2020_year_gem$munici_expected_med)
correlation std.err t.value p.value
Y -0.02421592 0.02214474 -1.093529 0.2742907
Scatter
Unweighted
Weighted
Box
EDA Nov vote
Map
Correlations
Unweighted
cor.test(exp_deaths_2020_year_gem$munici_sir,
$vote_yes_nov_perc,
exp_deaths_2020_year_gemmethod = "pearson")
Pearson's product-moment correlation
data: exp_deaths_2020_year_gem$munici_sir and exp_deaths_2020_year_gem$vote_yes_nov_perc
t = 1.8844, df = 2038, p-value = 0.05965
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
-0.001696124 0.084951179
sample estimates:
cor
0.04170594
Weighted
wtd.cor(exp_deaths_2020_year_gem$munici_sir,
$vote_yes_nov_perc,
exp_deaths_2020_year_gemweight = exp_deaths_2020_year_gem$munici_expected_med)
correlation std.err t.value p.value
Y -0.1597816 0.02186664 -7.307091 0.0000000000003899328