Rozpory v datech Analýzy dopravy v klidu — podklad k dotazu zpracovateli
Rozpory v datech Analýzy dopravy v klidu — podklad k dotazu zpracovateli
Sepsáno 2. 8. 2026 při přípravě mapové vrstvy parkování. Nálezy nezávisle ověřeny druhou extrakcí — protokol v parkovani-kontrola-codex.md.
Doplnění 2. 8. 2026 — příčina nalezena
Následná kontrola pořadí záznamů našla příčinu rozporů s vysokou jistotou:
Sloupce
OA DEN/OA NOCv tabulkové příloze byly ke kapacitní tabulce připojeny podle pořadí řádků, nikoli přes správnéIDúseku.
Identifikace, název a kapacity v PDF proto patří zobrazenému úseku, ale OA zpravidla pocházejí z jiného excelového řádku. OBS byly až následně vypočteny z těchto chybně připojených OA a správné kapacity aktuálního řádku. Proto jsou uvnitř řádku aritmeticky konzistentní, ale pro dané místo nesprávné.
Sekvenční kontrola spárovala 622 z 669 číselných PDF řádků s excelovými průměry ve stejném pořadí, a to včetně přesné shody všech čtyř procent obsazenosti. Podrobné důkazy a příklady jsou v oddílu „Nalezená kořenová příčina“ v kontrolním protokolu.
Praktický závěr pro mapu se tím mění: z PDF přílohy nelze používat ani OA, ani hotová OBS. Kapacity lze převzít z přílohy, počty vozidel je nutné vzít z Excelu přes skutečné ID a obsazenost znovu vypočítat.
Dotčené dokumenty
Analýza/Textova_zprava_2023.pdf— Analýza dopravy v klidu, koncepce řešení parkování. Zpracovatel M.O.Z. Consult s.r.o., srpen–listopad 2023, zadavatel Město Brandýs nad Labem – Stará Boleslav. 46 stran.- kap. 3.1, s. 10 — Dopravní průzkumy na všech komunikacích (souhrn po ZSJ)
- kap. 3.2, s. 11 — Dopravní průzkumy na místních komunikacích a silnicích
- kap. 3.4, s. 14 — Průzkumy doplněné o odhady vozidel ve vnitroblocích
- Tabulková příloha, s. 32–46 — údaje po jednotlivých úsecích (669 řádků)
data celoplošné brandýs public.xlsx— surová data sčítání, listdata, 708 řádků, sloupce: ID, Ulice, Úsek, Část, Průměr den, Průměr noc, dop/pol/odp/noc (2× — zřejmě dva průzkumní dny), Poznámka1, úsek
Co souhlasí
Parkovací kapacity sedí přesně. Součet zákonné kapacity (sloupec PS 361) z tabulkové přílohy za ZSJ Historické jádro a typy komunikací MK + SIL dává 257, což se přesně shoduje s tabulkou 3.2 na s. 11.
Uvnitř každého řádku přílohy jsou hodnoty konzistentní — uvedená obsazenost vždy odpovídá podílu vozidel a kapacity v témž řádku.
Rozpor č. 1 — příloha proti souhrnným tabulkám
Za ZSJ Historické jádro, typy MK + SIL:
| Veličina | Součet z tabulkové přílohy | Tabulka 3.2 (s. 11) |
|---|---|---|
| Kapacita PS 361 | 257 | 257 ✓ |
| Kapacita PS ČSN | 306 | 306 ✓ |
| Vozidel v noci (OA NOC) | 662 | 167 |
| Vozidel ve dne (OA DEN) | 446 | 226 |
Neshoda není ojedinělá: součet OA z přílohy nesouhlasí se souhrnem v žádné z 20 sídelních jednotek u tabulky 3.1 ani v žádné z 19 u tabulky 3.2. Kapacity přitom sedí ve všech řádcích obou tabulek.
Nejpravděpodobnější vysvětlení, které se podařilo doložit: souhrnné
počty vozidel nejsou agregované z tabulkové přílohy, ale z průměrů
v souboru data celoplošné brandýs public.xlsx. Pro Historické jádro
a typy MK+SIL dává agregace excelových průměrů OA NOC ≈ 166,5 → 167
a OA DEN ≈ 225,8 → 226, tedy přesně hodnoty tabulky 3.2.
Zjištěná odpověď: Souhrnné tabulky agregují excelové průměry správně, zatímco příloha obsahuje stejné nebo velmi blízké hodnoty OA připojené k nesprávným úsekům podle pořadí řádků.
Rozpor č. 2 — příloha proti surovým datům v xlsx
Tytéž ID a tytéž názvy úseků mají v obou souborech různé počty vozidel, a to v obou směrech:
| ID | Úsek | xlsx: průměr den / noc | Příloha: OA DEN / OA NOC |
|---|---|---|---|
| 101 | Nádražní, U Železnice – slepá | 6,5 / 1,5 | 16 / 16 |
| 354 | Na prádle, Ivana Olbrachta – S. K. Neumanna, 1. část | 12,3 / 11,5 | 2 / 0 |
| 355 | S. K. Neumanna, Podkostelní – Na prádle | 8,8 / 13,0 | 33 / 35 |
U ID 354 je hodnota v příloze nižší, u 101 a 355 vyšší. Nejde tedy o přepočet jedním směrem.
Párování je ověřené: přiřazení podle ID dává 669 spárovaných řádků, z nichž
663 má současně shodu v názvu ulice i úseku. Alternativy neobstály —
párování přes excelový sloupec úsek dává jen 2 shody a posun ID
o konstantu je horší než posun nulový.
Vztah hodnot se nepodařilo vysvětlit žádnou z testovaných hypotéz:
| Hypotéza pro OA v příloze | Přesná shoda (den i noc) z 669 řádků |
|---|---|
| průměr měření z xlsx | 9 |
| součet měření z xlsx | 11 |
| maximum měření z xlsx | 15 |
Zjištěná odpověď: Nejde o jinou transformaci měření. Hodnoty jsou
zaokrouhlené excelové průměry z jiných řádků. Například PDF ID 354
převzalo průměr 1,5/0 z excelového ID 591 s pomocným úsek=501;
PDF ID 355 převzalo 32,5/34,5 z ID 592, úsek=502.
Rozpor č. 3 — číslování a počet záznamů
Vyřešeno na naší straně (2. 8. 2026). Přečíslované a dělené úseky se
párují explicitním převodníkem ve směru ID v příloze → ID v xlsx:
500a → 496a, 570a → 578a, 416-1/2/3 → 416, 689-1/2 → 689,
729-1/2 → 729. Každá dvojice je ověřená shodou
názvu ulice i úseku a dělené úseky sdílejí jeden řádek surových dat.
Potvrzují to součty za ZSJ, které se pak trefí do tabulky 3.1. Bez toho
vycházela Rozmarýnova v mapě jako prázdná ulice. Dotaz na oficiální
převodní klíč zůstává, ale mapa už na odpovědi nezávisí.
Tabulková příloha obsahuje 712 datových řádků: 669 s čistě číselným ID,
35 se sufixem (typ 354a) a 8 dělených (typ 416-1). Soubor xlsx má 708
řádků, z toho 707 unikátních ID.
Mezi oběma sadami je znát přečíslování:
- xlsx má
496a, příloha tentýž úsek jako500a - xlsx má
578a, příloha jako570a - xlsx má základní ID
416,689,729, příloha je má dělené na416-1/2/3,689-1/2,729-1/2 - příloha obsahuje ID
479, které v xlsx není - xlsx obsahuje duplicitní ID 627 (druhý výskyt má
úsek = 941)
Otázka: Která sada je novější a která platí? Existuje převodní klíč mezi číslováním v xlsx a v příloze?
Formátové vady v příloze
Při strojovém čtení přílohy vypadlo sedm řádků kvůli formátu, ne obsahu:
- ID 382 (Na potoce) — v buňce obsazenosti je
######místo hodnoty - ID 519 (Královická), 552 (Husova) — holé
0místo0,0 % - ID 526–529 (Jiřího Macháčka) — příznak ZPS psaný
anomalým písmenem, jinde v tabulceAno
Nejde o zásadní věc, ale při případném předání dat v tabulkové podobě by stálo za to je sjednotit.
Proč na tom záleží
Data chceme použít pro veřejnou mapovou vrstvu obsazenosti parkování na webu brandysboleslav.cz/doprava. Vrstva má u každého úseku ukazovat kapacitu a obsazenost ve dne a v noci.
V mapě nebudeme zobrazovat OA ani OBS z tabulkové přílohy. Jejich
vnitřní konzistence vznikla tím, že se procenta dopočítala až po chybném
pozičním přiřazení vozidel, a nepotvrzuje správnost lokality.
Pro mapu použijeme kapacity z přílohy, excelové Průměr den/noc spojené
přes skutečné ID a nově vypočtenou obsazenost. Přejmenovaná, dělená a
duplicitní ID musí řešit explicitní převodník a kontrola úplnosti.
Zvlášť budeme odlišovat úseky se stavem ZÁKAZ — tedy nulovou kapacitou,
u které přesto stojí vozidla. Procento obsazenosti u nich nemá stejný
význam jako jinde.
Poznámka k reprodukovatelnosti
Extrakce dat z přílohy: doprava/tools/parkovani-import.py, výstup
doprava/data/parkovani.json. První verze importu rozpoznala 662 úseků;
aktuální výstup obsahuje všech 712 řádků přílohy včetně sufixových a dělených
ID. Postup je popsaný v hlavičce skriptu včetně zbývajících rozporů mezi PDF
a Excelovým sešitem.