Můj první datový hackathon

Po intenzivní Digitální akademii nastalo v mém životě jakési prázdno. I když se snažím vzdělávat doma, není to totéž jako sdílet nadšení z pokroků s ostatními. Když pražská skupina Pyladies oznámila konání datového hackathonu pro začátečníky, zapudila jsem strach z neznámého prostředí a okamžitě se přihlásila.

Python + data z Sreality = zábava na celý den

Jako zadání jsme dostali k dispozici data z Sreality.cz, přesněji se jednalo o inzeráty na nemovitosti za leden 2017 a leden 2018.

Tabulky obsahovaly základní informace o dispozici a typu nemovitosti, ceně, energetické náročnosti, datu vložení inzerátu, zeměpisné údaje a další. Na první pohled bylo vidět, že jsou ochuzené o některé informace, které uživatel zadává při vkládání inzerátu. Data jsme měli zpracovávat v Pythonu s využitím knihoven Matplotlib, a Pandas.

Mezi účastníky byla různá úroveň znalostí Pythonu — od holek, které prošly kurzy Pyladies nebo Czechitas, až po skutečné programátory. V našem týmu jsem byla jediná holka a upřímně bych řekla, že na nejnižší programátorské úrovni (chvilku jsem měla nutkání odejít na záchod a utéct okýnkem!). I to se nám podařilo vyvážit — míň jsem programovala a víc s klukama vymýšlela, jak na to půjdeme.

Jak velký byt se vám v Praze vyplatí rekonstruovat?

Práce s textem

Přidala jsem se do týmu k Františkovi, kterého zajímalo, jak velký byt by se vám v Praze vyplatil rekonstruovat a prodat. Ačkoliv tento parametr je součástí inzerátu, z našeho datasetu jsme informaci mohli získat pouze popisků inzerátu. Jenže ono to s tou češtinou není tak jednoduché…

Ukázka jednoho z popisků

Slovo rekonstrukce se v takovém popisku může vyskytovat v různých kontextech (před rekonstrukcí, určen k rekonstrukci, po rekonstrukci, žádá rekonstrukci nebo má pouze částečnou rekonstrukci…). Jak tedy inzeráty správně roztřídíme?

Hodně mi pomohlo cvičení na analýzu článků v médiích, které jsme na Digitální akademii programovali s Ondrou Veselým. Na začátku jsme si vytvořili funkci, která rozdělovala jednotlivá slova v inzerátu a následně vyhledávala útržky v textu, které nám pomohly pochopit, v jakém kontextu je rekonstrukce zmíněna.

Zároveň jsme věděli, že v některých popiscích se vyskytuje i několikrát. Výsledkem byly úryvky textů…

… na základě kterých jsme si připravili listy, pomocí kterých jsme inzeráty třídili.

Co když má celý dům rekonstrukci fasády, ale samotný byt rekonstrukci nemá? Byl to oříšek!

Jak je vidět, jak možností je spoustu. Chvíli jsme se snažili pracovat ještě s kategorií částečná rekonstrukce, ale to se nakonec ukázalo jako poměrně komplikované.

A nebyl to jediný scénář, se kterým jsme si lámali hlavu. Podařilo se nám však dojít k postupu, který byl relativně přesný, což jsme si zkontrolovali „ručně“ u vybraných vzorků.

Výsledky přinesly další iterace

První grafy nedávaly úplně smysl. Proto jsme se rozhodli, že budeme pracovat pouze s inzeráty, u kterých bezpečně víme, že rekonstrukce proběhla nebo neproběhla. Pokud o ní není ani zmínka, pryč s nimi!

Naštěstí jsme měli stále dostatek vzorků, aby měla data nějakou výpovědní hodnotu. Tohle je výsledek za všechny kraje:

Porovnání rozdílu ceny za m2 u bytů bez rekonstrukce (modrý sloupec) a s rekonstrukcí (oranžový sloupec) za rok 2018. Díváme se pouze na ceny bytů, které jsou na prodej.

To, co vidíte, je asi víceméně každému jasné — byty po rekonstrukci mají vyšší prodejní cenu. U některých krajů to pořád nevypadá úplně čistě a mezi cenami před a po rekonstrukci není očekávaný rozdíl. Data z Srealit byla zanesena různým balastem a cenotvorba některých realitek je kapitola sama pro sebe.

V dalších analýzách jsme se zaměřili pouze na Prahu a kde jsme se snažili zjistit, jak velký byt by se vám mohl finančně vyplatit zrekonstruovat a prodat. Cena za m2 se značně liší u různých dispozic.

Cena za m2 u bytů podle dispozice za 2017 v Praze. Modrý sloupec je cena před rekonstrukcí a oranžový po rekonstrukci.
Cena za m2 u bytů podle dispozice za 2018 v Praze. Modrý sloupec je cena před rekonstrukcí a oranžový po rekonstrukci.

Tady je patrné, že prodejní cena rekonstruovaných bytů v roce 2018 skočila proti předchozímu roku o kus nahoru:

Tady vidíme srovnání za oba roky.

Vypadá to, že v roce 2018 by se vám mohl vyplatit byt 1+1, 1+ kk nebo 2+kk. Nákupní rozhodnutí na základě naší analýzy, na kterou jsme měli doslova pár hodin, bych vám s čistým svědomím nedoporučila. Museli bychom mít lépe připravená data a ideálně je přímo kombinovat s cenami za rekonstrukci.

Ale i o tom hackathony jsou a náš nápad nakonec ocenila i porota. Skvělou práci odvedly také ostatní týmy, které zpracovávaly tato témata:

  • Jedna z účastnic aktuálně prodává byt v Nymburce. Se svým týmem tedy hledala, jak si stojí v porovnání s ostatními inzeráty ve městě a zkoušela odhadnout, jestli se prodá už během měsíce ledna.
  • Jiný tým kombinoval data s údaji o zastávkách metra v Praze a díval se, jak pořídit nejlevnější byt co nejblíže zastávce metra. Neméně zajímavá byla i jejich analýza nad tím, které zastávky mají ve svém okolí nejdražší nebo naopak nejlevnější byty.
  • S podobnými údaji pracoval i třetí tým. Ten vytvořil prototyp aplikace, do které jste zadali svoji polohu v souřadnicích a čas, který jste ochotní dojít pěšky na nejbližší zastávku metra. Výsledkem byl výběr inzerátů, které odpovídají zadaným kritériím.

A co mi to dalo?

Moji největší bariérou byl strach. Obava, že nebudu tak dobrá jako ostatní, že datové knihovny Pythonu nemám moc zažité a že tam budu úplně mimo. Nakonec jsem zjistila, že to bylo úplně zbytečné.

Naučila jsem se spoustu věcí a nakoplo mě to k další práci. Hackathon je skvělá ukázka toho, že pokud na to nejste sami, můžete i s malými zkušenostmi dosáhnout zajímavých výstupů ve velmi krátkém čase.

Díky za tu zkušenost!

Radost! Nikoliv z vítězství, ale ze zážitku a nových znalostí.