Jak fungují open data státní pokladny

Note: for a basic English-language intro to the package, see the index page (basic usage) and the Get started vignette (background on the underlying data).

Poznámka: seznam vysledovaných problémů se zdrojovými daty jsem vyčlenil do zvláštního dokumentu

Co je toto za text

Soupis skoro všeho, co vím a nevím o hrubých datech státní pokladny. Mohl by být užitečný pro

Nejsem rozpočtář ani účetní - tato data primárně používám k zodpovídání ekonomických otázek, takže nemusím bazírovat na přesné terminologii nebo přesnosti dat do poslední koruny. Pokud ale je v textu něco špatně nebo je potřeba doplnit, budu rád za pull request nebo issue.

Kde brát informace

Soustava prvků dostupných ze státní pokladny

Prakticky to vypadá tak, že jeden balík s výkazem obsahuje více CSV souborů, kdy jednotlivé soubory obsahují jednu nebo víc tabulek daného výkazu.

Číselníky jsou v XML, ale dají se i prohlížet (příklad) a tamtéž stáhnout v CSV.

Pozor: číselníky jsou časově determinované a pokud neodfiltrujete položky nerelevantní pro dané časové období, můžou při napojování JOINem vzniknout chyby nebo nechtěné duplicity…

Typy výkazů

Jak se to odráží v datech?

  • pokud to správně chápu, tak sloupce začínající ZU_ jsou údaje, sloupce začínající ZC_ slouží k napojení na číselník identifikovaný zbytkem názvu
  • někdy jsou atributy daných řádků vidět až v číselnících: například se může stát, že v datech je nějaký řádek označen jako program X a není tam sloupec označující zdroj peněz, ale informaci o zdroji obsahuje až číselník programů, který je potřeba napojit.

Příjmy, výdaje, financování

Rozpočtová skladba

Tomuto je dobré rozumět: český státní rozpočet umí peníze rozdělovat do různých druhů škatulek. tyto druhy škatulek se jmenují třídění.

Týká se to jen rozpočtových reportů.

Každý typ třídění má typicky několik úrovní, např.

Jak se to odráží v datech

Rozpočtová data si lze představit jako tabulku v “dlouhém formátu”, kde každá koruna má svůj řádek a pro každý typ členění má tabulka sloupec, který danou korunu zařazuje do nejjemnějšího rozpadu daného členění. (Třeba paragraf 1234, který spadá do skupiny 12, podskupiny 123 atd. - tyto kódy a hierarchie lze rozklíčovat napojením číselníku.) Plus tabulka obsahuje organizaci, pro kterou je tato koruna rozpočtována nebo účtována. (V praxi nejde o jednotlivé koruny, ale o kyblíky všech korun, které odpovídají dané kombinaci atributů/členění).

Jinými slovy, je to rozdrobené na nejmenší známé průniky všech použitých členění.

Třídění podle fází se odráží v numerických proměnných.

Organizace jsou naskládané pod v jednom souboru, čili jeden soubor obsahuje celou množinu reportujících organizací (organizace, které jsou součástí státu, nebo naopak všechny místně řízení). Není to tedy tak, že bychom pro každou organizaci museli stahovat extra soubor.

Tím pádem veškeré výdaje podle členění X získáme tak, že sečteme všechna čísla ve skupinách podle členění X a ignorujeme ostatní členění; členění jde taky kombinovat - typicky nás můžou zajímat výdaje na jednotlivé sektory dál dělené na kapitálové a běžné.

Toto platí pro běžné rozpočtové výkazy (datasety). Všechna členění jsou v jedné tabulce. Některé výkazy ale obsahují součty a mezisoučty nebo ukazatele, které jsou součty jiných řádků, takže na to pozor, nejde to sčítat - je zkrátka dobré se na data přece jen občas podívat očima. V takových případech ale číselník obsahuje atribut pořadí řádku, aby šel výkaz číst. Pokud vím, týká se to přinejmenším

Jednotky analýzy: o kom a čem se vykazuje

Konsolidace: co sčítat a co ne

Oč jde

Pro některé účely je dobré vědět, kde peníze finálně skončily - kdo je utratil a za jakým účelem - i když tyto peníze předtím protekly jinými částmi veřejného sektory. V ten moment se koukám na nějaký celek (kraj se všemi jeho obcemi, stát se všemi samosprávami, stát se všemi svými ministerstvy) jako na jednu organizaci a potřebuju tedy očistit přesuny peněz, které jsou z této perspektivy interní, aby se mi do případných součtů nezapočítaly dvakrát.

K tomu slouží konsolidace a open data státní pokladny ji naštěstí umožňují.

Jak se to odráží v datech

V rozpočtových (a možná i jiných) výkazech V číselníku polozka (“Rozpočtová položka” neboli číselník druhového třídění) jsou sloupce začínající kon_ s hodnotou true nebo false. Pro konsolidaci na úrovni okresu je to kon_okr atd.

Co s tím

Pokud chci zajistit, že se mi nedublují výdaje kraje a obcí (např. dotace kraje obcím), potřebuju si nechat v datasetu pouze řádky, kde kon_okr je true. Pokud chci konsolidovat vše (tj. zajímají mě údaje na úrovni státu), musím takto filtrovat všechny sloupce začínající kon_, a tak dál.

Reportování daňových příjmů

Technicky se netýká konsolidace, ale souvisí to: na příjmové straně je třeba myslet na to, že kvůli zákonu o rozpočtovém určení daní jde část centrálně vybraných daní alokuje rovnou obcím a v rozpočtu se vůbec neobjeví, tj. ve výkazu centrálních institucí je v některých daňových příjmech zaneseno jen cca 70 % toho, co se zkutečně vybere. (Týká se to daní z příjmu a DPH.) K analýze daňových příjmů je lepší použít data Finanční správy.

Známe neznámé: