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é…
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.
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:
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.
Tady je patrné, že prodejní cena rekonstruovaných bytů v roce 2018 skočila proti předchozímu roku o kus nahoru:
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!