Přeskočit na obsah
czechdatasets

Obce v číslech: 786 ukazatelů za každou obec 2000–2025

786 ukazatelů Městské a obecní statistiky ČSÚ za každou obec od roku 2000: obyvatelé, školy, lékaři, firmy, nezaměstnanost, rozpočty a sčítání. V jedné tabulce s kódy RÚIAN, navíc přehled 36 klíčových čísel pro každou obec.

Ukázka zdarma

Jednorázově, konečná cena za osobní licenci, firemní vybereš v objednávce · stav dat 22. 7. 2026

Ostrov s návsí: radnice s věžičkou, kaplička, domky, rybníček a uprostřed velké dřevěné počítadlo s barevnými kuličkamiOstrov s návsí: radnice s věžičkou, kaplička, domky, rybníček a uprostřed velké dřevěné počítadlo s barevnými kuličkami

Kolik práce to šetří

Sloučit 26 ročních souborů MOS (36,9 milionu řádků jen s kódy), připojit číselník 800 ukazatelů s metodikou a pokrytím v čase, převést 179 134 chráněných údajů na NULL s příznakem, vynechat 237 804 zástupných nul z prvního vydání roku 2025 a doplnit 6 272 obcím včetně zaniklých okres, ORP a kraj pro každý rok.

Změřeno při naší stavbě

Řádků kódu a testů
908
Tokenů AI agenta
22 mil.
Běh AI agenta
40 min

Tokeny a čas jsou za první funkční verzi kódu s agentem Claude Opus 5.5. Nepočítá se průzkum zdrojů a licencí, kontrola kvality ani pozdější opravy.

  • Ukázka zdarma: výřez všech tabulek za Kutnohorsko v CSV a Parquetu. Stáhnout ukázku
Stav dat
22. 7. 2026
Řádků
37 mil.
Tabulek
6
Formáty
PostgreSQL, Parquet, CSV, JSON
Licence zdroje
CC BY 4.0 (ČSÚ, ČÚZK)

Co je uvnitř

Všech 786 ukazatelů Městské a obecní statistiky ČSÚ (MOS) za všechny obce ČR v letech 2000–2025 v jedné dlouhé tabulce s kódy obcí RÚIAN: obyvatelstvo, školství, zdravotnictví, ekonomické subjekty, nezaměstnanost, hospodaření obcí, druhy pozemků, sčítání 1991–2021 a další. Číselník ukazatelů s metodikou, obce s příslušností po rocích a široká tabulka klíčových ukazatelů.

TabulkaŘádků
okruhy17 statistických okruhů MOS s počty ukazatelů a hodnot17
ukazatelečíselník ukazatelů: název, okruh, jednotka, zdroj, metodika, periodicita, roky v datech800
obcevšechny obce, které se v MOS vyskytují (i zaniklé), poslední známý stav, souřadnice6 272
obce_rokyobec × rok tak, jak ji MOS vykazuje, s příslušností k okresu, ORP a kraji v daném roce162 597
hodnotyvšechny hodnoty v dlouhém formátu: obec × rok × ukazatel36 624 946
obce_prehledjedna řádka na dnešní obec, 36 klíčových ukazatelů z posledního dostupného roku6 258

Obce jsou v hranicích platných v daném roce, nic není přepočítané na dnešní obce. Rok 2025 je zatím první vydání ČSÚ (bez školství, zdravotnictví a nezaměstnanosti).

Ke stažení

Každý formát obsahuje stejná data. Stáhneš jen ten, který potřebuješ; integritu ověříš souborem SHA256SUMS.

FormátSouborůVelikost
PostgreSQLschema.sql s typy, klíči, indexy a komentáři a import.sh, který načte data z CSV218 kB
ParquetJeden soubor na tabulku (zstd). DuckDB, Polars a pandas ho čtou bez importu.661 MB
CSVUTF-8, čárka, hlavička; velké tabulky jako .csv.gz6153 MB
JSONPole objektů, velké tabulky jako JSON Lines (.jsonl.gz)6195 MB

Ukázka kódu

Další příklady pro SQL, DuckDB, Python a Node.js jsou v README.md uvnitř balíčku.

Časová řada jedné obcePostgreSQL
-- vývoj nezaměstnanosti a počtu obyvatel v Jihlavě
SELECT h.rok, u.nazev, h.hodnota, u.jednotka
FROM obce_v_cislech.hodnoty h JOIN obce_v_cislech.ukazatele u USING (ukazatel_kod)
WHERE h.obec_kod = 586846 AND h.ukazatel_kod IN ('110900', '500020')
ORDER BY h.ukazatel_kod, h.rok;
Vlastní široký panel bez importuDuckDB
-- vlastní široký panel: obec × rok × vybrané ukazatele
PIVOT (SELECT obec_kod, rok, ukazatel_kod, hodnota FROM 'parquet/hodnoty.parquet'
       WHERE ukazatel_kod IN ('110900', '110200', '110300', '160100'))
ON ukazatel_kod USING max(hodnota) GROUP BY obec_kod, rok ORDER BY obec_kod, rok;
Byty na 1000 obyvatel podle krajůPostgreSQL
-- dokončené byty na 1000 obyvatel podle krajů v historických hranicích
SELECT r.rok, r.kraj, round(1000 * sum(b.hodnota) / sum(o.hodnota), 2) AS byty_na_1000
FROM obce_v_cislech.hodnoty b
JOIN obce_v_cislech.hodnoty o ON o.obec_kod = b.obec_kod AND o.rok = b.rok AND o.ukazatel_kod = '110900'
JOIN obce_v_cislech.obce_roky r ON r.obec_kod = b.obec_kod AND r.rok = b.rok
WHERE b.ukazatel_kod = '121800' AND b.rok BETWEEN 2015 AND 2024
GROUP BY 1, 2 ORDER BY 1, 2;

Obce v číslech 2000–2025 za 290 Kč.

Jednorázová platba, stažení hned po zaplacení, bez účtu a předplatného. Aktualizace sady jsou v ceně. Všech 15 placených sad dohromady stojí 2 490 Kč, o 3 510 Kč méně než po jednom.