-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy paths_pokladna.Rmd
444 lines (337 loc) · 16.1 KB
/
s_pokladna.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
---
title: "Veřejné výdaje a ESI fondy: hlavní poznatky"
subtitle: "Interní draft, říjen 2021"
output:
html_document
always_allow_html: yes
bibliography: [rmd-in/references.json, rmd-in/packages.bib]
csl: rmd-in/chicago-author-date.csl
link-citations: yes
nocite: '@*'
lang: cs
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, out.width = "100%", warning = FALSE, message = FALSE,
fig.retina = 3, fig.width = 6, fig.height = 4)
source("_targets_packages.R")
source("R/utils.R")
source("R/functions.R")
options(scipen=100, digits=8)
```
```{r, include=FALSE}
knitr::write_bib(c("base", "ggplot2", "dplyr", "readr", "readxl",
"stringr", "czso", "janitor", "pointblank", "arrow",
"lubridate", "targets",
"forcats", "tidyr", "statnipokladna"),
file = 'rmd-in/packages.bib')
```
```{r load-targets}
targets::tar_load(sp_cl)
targets::tar_load(cb_esif_marked)
targets::tar_load(matches("^cb_sum"))
```
## Celkové výdaje {.tabset}
### Celý státní rozpočet {.tabset .tabset-pills}
```{r load-targets-specific}
targets::tar_load(matches("^cb_(totals|trida)"))
```
#### Absolutně
```{r plot-abs, fig.height=3, fig.cap = "Celkové výdaje"}
plot_esif(cb_totals, breaks_y_limit = 2000, by_trida = FALSE,
title = "Výdaje státního rozpočtu: role ESI fondů",
subtitle = "mld. Kč", legend_labels = names(palette_studie)[c(5:6)])
```
#### Podíl ESIF
```{r plot-perc, fig.height=3, fig.cap = "Podíl na celkových výdajích"}
plot_esif(cb_totals_p, perc = TRUE, by_trida = FALSE,
title = "Podíl ESI fondů na výdajích státního rozpočtu")
```
### Relevantní oblasti (srovnatelné se studií z roku 2017) {.tabset .tabset-pills}
#### Absolutně
```{r plot-abs-hlousek, fig.height=3}
plot_esif(cb_totals_hl, breaks_y_limit = 2000, by_trida = FALSE,
title = "Výdaje státního rozpočtu: role ESI fondů",
subtitle = "mld. Kč", legend_labels = names(palette_studie)[c(5:6)])
```
#### Podíl ESIF
```{r plot-podil-hlousek, fig.height=3}
plot_esif(cb_totals_hl_p, perc = TRUE, by_trida = FALSE,
title = "Podíl ESI fondů na výdajích státního rozpočtu")
```
## Běžné a kapitálové {.tabset}
### Celý státní rozpočet {.tabset .tabset-pills}
#### Absolutně
```{r plot-bezkap-abs}
plot_esif(data = cb_trida, facet_var = trida, title = "Výdaje vlastní a z ESI fondů",
subtitle = "mld. Kč")
```
#### Podíl ESIF
```{r plot-bezkap-perc, fig.height=3, fig.cap = "Podíl na celkových výdajích"}
plot_esif(cb_trida_p, perc = TRUE, by_trida = TRUE,
title = "Podíl ESI fondů na výdajích státního rozpočtu")
```
### Relevantní oblasti {.tabset .tabset-pills}
#### Absolutně
```{r plot-bezkap-hl, fig.height=3, fig.cap = "Podíl na celkových výdajích"}
plot_esif(cb_trida_hl, perc = FALSE, by_trida = TRUE, facet_var = trida,
title = "Podíl ESI fondů na výdajích státního rozpočtu")
```
#### Podíl ESIF
```{r plot-bezkap-perc-hl}
plot_esif(data = cb_trida_hl_p, perc = TRUE,
facet_var = trida, title = "Podíl ESI fondů na běžných a kapitálových výdajích")
```
## Odvětvové členění {.tabset .tabset-pills}
### Skupiny
```{r plot-skup}
plot_esif(data = cb_trida_skupina, perc = FALSE,
facet_var = skupina, title = "Výdaje vlastní a z ESI fondů podle skupin",
subtitle = "členěno na běžné a kapitálové, mld. Kč")
```
```{r plot-skup-podil}
plot_esif(data = cb_trida_skupina_p, perc = TRUE, keep_legend = TRUE,
facet_var = skupina, title = "Podíl ESI fondů na výdajích podle skupin",
subtitle = "členěno na běžné a kapitálové, mld. Kč") +
theme(legend.position = "bottom")
```
### Skupiny (odvětvové členění) {.tabset .tabset-pills}
```{r plot-oddil-abs, fig.height=6}
plot_esif(data = cb_trida_oddil, perc = FALSE,
facet_var = oddil,
title = "Výdaje vlastní a z ESI fondů podle oddílů",
subtitle = "členěno na běžné a kapitálové, mld. Kč. Soc. zabezpečení vynecháno pro čitelnost")
```
```{r}
plot_esif(data = cb_trida_oddil |> filter(trida == "Kapitálové výdaje"),
facet_var = oddil, legend_labels = names(palette_studie)[5:6])
```
```{r}
oddily_pod_50mld <- cb_trida_oddil |>
filter(trida == "Běžné výdaje", vykaz_date > "2020-01-01") |>
count(trida, wt = spending/1e9) |>
filter(n < 100) |> pull(oddil)
plot_esif(data = cb_trida_oddil |>
filter(trida == "Běžné výdaje",
oddil %in% oddily_pod_50mld,
),
facet_var = oddil, legend_labels = names(palette_studie)[5:6])
```
```{r}
oddily_nad_50mld <- cb_trida_oddil |>
filter(trida == "Běžné výdaje", vykaz_date > "2020-01-01") |>
count(trida, wt = spending/1e9) |>
filter(n >= 100) |> pull(oddil)
plot_esif(data = cb_trida_oddil |>
filter(trida == "Běžné výdaje",
oddil %in% oddily_nad_50mld,
),
facet_var = oddil, legend_labels = names(palette_studie)[5:6])
```
### Podíl ESIF
```{r plot-oddil-podil, fig.height=6}
plot_esif(cb_trida_oddil_p, facet_var = oddil, perc = TRUE,
keep_legend = TRUE,
title = "Podíl ESI fondů na výdajích podle oddílů",
subtitle = "členěno na běžné a kapitálové") +
theme(legend.position = "bottom")
```
## Tematické analýzy
### Bydlení
```{r}
cb_trida_pododdil_p |>
filter(str_detect(oddil, "Bydle")) |>
plot_esif(perc = TRUE, facet_var = pododdil, keep_legend = TRUE) +
theme(legend.position = "bottom")
```
```{r}
cb_trida_pododdil |>
filter(str_detect(oddil, "Bydle")) |>
plot_esif(perc = FALSE, facet_var = pododdil)
```
### ŽP
```{r}
cb_trida_pododdil_p |>
filter(str_detect(oddil, "životn")) |>
plot_esif(perc = TRUE, facet_var = pododdil)
```
```{r}
cb_trida_pododdil |>
filter(str_detect(oddil, "životn")) |>
plot_esif(facet_var = pododdil)
```
```{r}
cb_trida_pododdil |>
filter(str_detect(oddil, "Vodn")) |>
plot_esif(facet_var = pododdil)
```
```{r}
cb_sum_long |>
filter(str_detect(pododdil, "Komunální služby")) |>
plot_esif(facet_var = paragraf)
```
```{r}
cb_sum_long |>
filter(str_detect(pododdil, "Nakládání s odpady")) |>
plot_esif(facet_var = paragraf_nazev, ylabel_precision = .1)
```
```{r}
cb_sum_long |>
filter(str_detect(pododdil, "Ochrana ovzduší")) |>
plot_esif(facet_var = paragraf_nazev)
```
```{r}
cb_sum_long |>
filter(str_detect(pododdil, "Ostatní odvětvové"),
) |>
plot_esif(facet_var = paragraf_nazev)
```
```{r}
cb_sum_long |>
filter(str_detect(pododdil, "Ostatní odvětvové"),
) |>
plot_esif(facet_var = paragraf_nazev)
```
## Rizikové pododdíly
### Běžné výdaje {.tabset .tabset-pills}
```{r sum-pododd-riziko}
cb_trida_pododdil_perc_avg <- cb_sum_long %>%
group_by(trida, skupina, oddil, pododdil, source) %>%
summarise(spending = sum(spending), .groups = "drop") %>%
group_by(trida, pododdil) %>%
mutate(perc = spending/sum(spending)) %>%
filter(source == "EU") %>%
mutate(trida = str_remove(trida, " výdaje"))
cb_sum_pododdil_perc_slope <- cb_trida_pododdil_p %>%
filter(vykaz_date > "2016-01-01") %>%
group_by(trida, skupina, oddil, pododdil) %>%
mutate(allna = all(is.na(perc))) %>%
filter(!allna) %>%
nest() %>%
mutate(model = map(data, ~lm(perc ~ vykaz_date, data = .x) %>% broom::tidy())) %>%
unnest(model) %>%
filter(term == "vykaz_date") %>%
select(trida, pododdil, slope = estimate) %>%
left_join(cb_trida_pododdil_perc_avg)
pododd_ranks_bezne <- cb_sum_pododdil_perc_slope %>%
filter(trida == "Běžné výdaje") %>%
ungroup() %>%
mutate(rank_perc = 1/rank(perc),
rank_slope = 1/rank(slope),
rank_sum = rank_perc + rank_slope) %>%
select(skupina, oddil, pododdil, trida, starts_with("rank")) %>%
slice_min(rank_perc, n = 12)
```
```{r pododd-riziko}
pododd_riziko <- cb_trida_pododdil %>%
filter(vykaz_date > "2016-01-01") %>%
left_join(pododd_ranks_bezne) %>%
drop_na(rank_sum) %>%
mutate(pododdil = as.factor(pododdil) %>%
fct_reorder(rank_slope)) %>%
group_by(oddil) %>%
mutate(spend_oddil = sum(spending)) %>%
ungroup() %>%
mutate(pododdil = fct_reorder(pododdil, spend_oddil, .desc = TRUE, .fun = mean) %>%
fct_relabel(~str_sub(.x, 1, 40)))
```
```{r make-plot-pododd-riziko}
riz_odd_gg <- ggplot(pododd_riziko, aes(vykaz_date, spending/1e9, alpha = source)) +
scale_y_continuous(expand = ptrr::flush_axis,
labels = ptrr::label_percent_cz()) +
scale_x_date(labels = yr_lbls, breaks = yr_brks) +
scale_alpha_manual(values = c(1, .5), name = "Zdroj") +
scale_fill_manual(values = c(clrs[["b"]], clrs[["k"]]), name = NULL) +
theme_studie(multiplot = T) +
facet_wrap(~pododdil, nrow = 4, labeller = label_wrap_gen())
```
#### Absolutně
```{r plot-pododd-riziko-abs, fig.height=7}
riz_odd_gg +
geom_col(position = "stack", fill = clrs[["b"]]) +
labs(title = "Vybrané rizikové pododdíly výdajů státního rozpočtu",
subtitle = "běžné výdaje, mld. Kč\nřazeno podle objemu rozpočtového oddílu") +
scale_y_continuous(expand = ptrr::flush_axis,
labels = ptrr::label_number_cz(1))
```
#### Podíly
```{r plot-pododd-riziko-podil, fig.height=7}
riz_odd_gg +
geom_col(position = "fill", fill = clrs[["b"]]) +
labs(title = "Vybrané rizikové pododdíly výdajů státního rozpočtu",
subtitle = "běžné výdaje, podíly\nřazeno podle objemu rozpočtového oddílu")
```
## Příklad detailní analýzy
```{r plot-detail}
pdod <- "Správa v sociálním zabezpečení a politice zaměstnanosti"
pdsk <- "Platy"
cb_esif_marked %>%
filter(podseskupeni == pdsk,
pododdil == pdod
# pododdil == "Správa ve vzdělávání"
# pododdil == "Správa v ochraně životního prostředí"
) %>%
count(vykaz_date, esif, wt = budget_spending/1e9) %>%
ggplot(aes(vykaz_date, n, alpha = as.factor(esif) %>% fct_rev())) +
scale_alpha_manual(values = c(1, .5), name = "Zdroj",
labels = c("EU", "vlastní")) +
geom_col(fill = clrs[["b"]]) +
theme_studie() +
labs(title = "Podíl EU fondů na specifické výseči výdajů",
subtitle = str_glue("Podseskupení: {pdsk}\nPododdíl: {pdod}"))
```
## Technické aspekty ve stručnosti {#data}
### Zdroje dat
Využíváme data ze Státní poklady, konkrétně otevřené datové sady o plnění rozpočtů tzv. ústředně řízených organizacích, které dohromady odpovídají hranicím státního rozpočtu.
### Jak fungují rozpočtová data
#### Záběr
Státní pokladna ve veřejně dostupných datech sleduje čtyři typy organizací
- ústředně řízené:
- organizační složky státu
- příspěvkové organizace
- státní fondy
- místně řízené,
- tj. obce, kraje a jejich příspěvkové organizace a sdružení, vše společně
Kromě příjmů a výdajů pak stát eviduje ještě účelové transfery (dotace) od státu k obcím.
#### Logika toku peněz a její odraz v datech
Peníze do veřejného sektoru tečou třemi cestami:
- do státního rozpočtu
- do obecních a krajských rozpočtů
- do státních fondů
Následně tečou dál formou transferů, tj. účelových a neúčelových přesunů, dotací atd., např. od státu nebo státním fondům obcím nebo státním příspěvkovým organizacím.
Peníze jednou přitečené do státního rozpočtu jsou tam vidět jako příjem a následně jako výdaj. Pokud peníze utrácí stát sám na svoje vlastní aktivity, výdaje vidíme rozčlěnený do detailu podle paragrafů a položek. Pokud stát poslal peníze dál, např. obcím, vidíme ho jako transfer a další detail vidíme až v datech od toho, kdo je na konci utratil, tj. např. obec. Proto např. ve státním rozpočtu nejde dobře sledovat výdaje na platy ve školství, protože ty jsou ve státním rozpočtu evidovány jako transfer obcím a nejsou v detailu sledovány.
U ESI fondů platí, že peníze přitečou vždy do státního rozpočtu (tzv. Národní fond) a následně je stát buď
- utratí (sám je příjemce) - pak vidíme na co přesně, tj. např. platy, nákupy + na jaké odvětví (paragraf)
- pošle dál do veřejného sektoru, např. obci nebo vlastní příspěvkovce - pak je vidíme ve výdajích SR jako transfer a obec/státní či obecní příspěvkovka jej eviduje v detailu výdajů svého rozpočtu (k tomu ale viz níže)
- pošle do soukromého sektoru jako transfer (dotaci) - pak je vidíme ve výdajích SR jako transfer v daném odvětví (paragrafu).
Technické řešení tohoto problému - kdy výdaje jsou evidovány při předání mezi částmi veřejného sektoru i při konečném vydání - řeší konsolidace, pro kterou data státní pokladny také poskytují podklad.
#### Členění: jaký detail můžeme znát
Data státní pokladny fungují tak, že na každou utracenou korunu nalepí několik nálepek podle různých členění a výsledné datové sady tak poskytují velmi jemný rozpad výdají podle několika členění naráz. Každé členění má několik úrovní detailu, od cca 10 kategorií po několik set.
- odvětvové členění, tzv. paragrafy, tj. na jakou oblast (viděno sektorově)
- zodpovědnostní členění: kapitoly, tj. z rozpočtu kterého ministerstva, popř. konkrétní veřejné organizace, výdaje šly
- druhové členění: v nejvyšší hladině členění na běžné a kapitálové výdaje, dále na platy, transfery, nákupy atd.
- zdrojové třídění: kde se peníze vzaly? V základní úrovni ČR x mimo, dále až na konkrétní programy vč. kofinancování
Této vícerozpěrnosti dat využíváme jednak pro identifikaci peněz z ESIF (zdrojové třídění), jednak pro detailnější analýzy (např. kapitálové výdaje na transfery soukromému sektoru v oblasi energetiky).
U zdrojového třídění dokážeme odlišit i období, tj. např. v roce 2015 lze odlišit OP D 2007-13 od OP D 2014-20.
#### Ve vztahu k ESIF datům
Ze státní pokladny lze dovodit operační program, ztrácí se ale vazba na projekty a tím i na kategorie používané v monitoringu ESIF, např. oblasti intervencí.
### Dostupnost a omezení dat
| typ | roky | identifikace ESIF |
|---|---|---|
| státní rozpočet | 2015-2021 | Ano
| státní příspěvkové organizace | 2010-2020 | ? |
| státní fondy | 2015-2021 | Ne |
| samosprávy a jimi zřizované organizace | 2010-2021 | Částečně |
#### Poznámky ke kvalitě dat
- odvětvové třídění investic do pododdílů v oddílu Doprava je po roce 2015 velmi vachrlaté a pododdíly v podstatě nejdou použít - většina výdajů na železnice a silnice je v pododdíle Ostatní záležitosti... a všechny tyto oddíly objemově velmi skáčou mezi lety.
### Srovnatelnost se studií z roku 2017
Hlavní rozdíly jsou tři:
1. studie z roku 2017 zahrnuje státní fondy
2. studie z roku 2017 zahrnuje samosprávy
3. studie z roku 2017 pracuje s vybraným okruhem výdajů - vyloučeny jsou např. ty části druhového nebo odvětvového třídění, kde ESI fondy nehrají roli (např. sociální dávky), popř. které nebyly centrem zájmu studie (zemědělství)
Ad 1: u SF nejsou z veřejných zdrojů data o zdrojích výdajů, pro rok 2017 vznikly velkým množstvím ruční kompilace interně na MF
Ad 2: pro obce data o zdroji výdajů zřejmě nejsou přímo dostupná od roku 2015
Následky:
ad 1. Kategorie "ústředně řízení organizace" zahrnuje jiný okruh výdajů; po roce 2015 u části těchto výdajů neznáme rozdělení na ESIF a vlastní. Nicméně celkové součty výdajů pro "překryvový" rok (kde máme data z obou zdrojů) cca odpovídají.
ad 2. O kategorii "místně řízených organizací" tj. samospráv máme ohledně podílu ESIF jen nepřímá data a jejich kvalita spolehlivost zatím není jasná.
ad 3. V této studii na některých místech ukazujeme dva okruhy výdajů: jednak celý státní rozpočet, jednak výběr podle studie z roku 2017.
## Citace: literatura, data, nástroje