Porovnávání měst pro výběr bydlení
Motivace: Často za mnou chodí známí, abych jim pomohla vybrat místo bydlení a setkávám se často s tím, že neví ani město, kde by chtěli bydlet. Následně tedy vždy hledám kvality jednotlivých měst pro konrétní osoby. Chtěla bych si to trochu zautomatizovat a hlavně tam dodat i nějaká tvrdá data o sociálním životě města.
Co lidi většinou zajímá při výběru bytu/pozemku z většího měřítka a co z toho by se dalo částečně automatizovat + zdroje, kde odkud si myslím, že bych mohla získat:
Kdo tam se mnou bude bydlet- věk, kolik lidí v nejbližším okolí, klidové/tranzitní místo — O2 api — transit/visit, věk, pohlaví, počet
Cena a velikost bytu/pozemku — realitní data bytů od mentora
Vybavenost a kvalita vybavenosti — foursquare
Pozemek/byt v detailu— kvality, výhledy, genius loci místa — nelze automatizovat — nutný odborný názor
Dostupnost místa/města — nepodařilo se mi zatím bohužel najít žádný veřejný dataset s jízdními řády a nenapadá mě, jak by bylo možné se napojit na jízdní řády
Pracovní příležitosti — neřeší se většinou v rámci okolí Prahy
ZÍSKÁVÁNÍ DAT PRO VIZUALIZAČNÍ NÁSTROJ
1 ) napojení na O2 api (pro pokusy není třeba smlouva s O2, pro mé účely — 10 000 dotazů/den — třeba smlouva s O2)
můj kód (python, jupiter) — počítám zatím s tím, že si vyberu vybrané ZSJ manuálně pro konrétní zkoumané území a kodem si rovnou vyčistím data
Když jsem konečně získala klíč od O2 ( dělat práci v době svátku není úplně dobrý nápad, když chcete získat přístupy od korporátů :-)), tak jsem po spuštění cyklu zjistila, že bohužel O2 api je zatím v pilotním provozu a slibovaných možných 10 000 dotazů/ den se mi omezilo na 500/ den
Tím bohužel nedokážu zmapovat ani 1 celé město (př.sociodemo pouze podle věku pro 1 maloměsto — 15 zsj x 5 vek kateg x 24 hod x 2 trans/visit = 3600 dotazů/den) . Tedy kody zde pro věk/pohyb obyvatel/pohlaví, ale nakonec musím změnit koncept celé práce a výstupů ukáži pouze pár pro ukázku.





výsledek

2) napojení na foursquare
https://developer.foursquare.com/docs/venues/explore








vysledek

3) realitní data — poskytnuty mentorem v SQL databázi
Při zkoušení dat v Tableau jsem narazila na problém.
CÍL CELÉ PRÁCE :
propojit na sobě 3 zdánlině nezávislé vrstvy (sociální, vybavenost, ceny a počet bytů) — souvislosti jak pro případného kupce bytu, tak souvislosti pro orborníky (urbanisty, architekty,…)
problémy vzhledem k vybranému vizualizačnímu nástroji:
Zvolený vizualizační nástroj Tableau nedokáže vytvořit vztah mezi na sobě nezávislými zdroji (4sq, reality, O2) jen na základě GPS ( jak jsem si původně myslela) — nepracuje ve vrstvách v mapě jako např QGIS a ArcGis
tedy vzdálenosti a radiusy na sobě nezávislých vrstvvách nelze vytvářet — př. mapa, kde se dozvim ke zvolenému bytu všechny hospody v radiusu 300 m — to co by klienta zajímalo — není třeba řešit v rámci maloměst, ale v rámci Prahy ano
Návrh řešení — musím vše přiřadit k jednotlivým oblastem — oblati Praha 1, Praha 2 příliš velké pro radius důležitý pro klienta u bydlení, tedy volím katastrální území a tomu také přizpůsobuji hledání 4sq (nehledám dle města, ale dle lokality) — každe katastrální území má svůj kod (přes to následně napojím 4sq a reality)
stáhnutí polygonů ve formátu shp a nalezení tabulky s kody pro jednotlivé katastrální území

Poskytnutá data(žlutě — co třeba ještě upravit, aby bylo možné dále použít):
Pár příkladů úprav, které bylo třeba provést nad daty v Datagripu:
select *, split_part(locality, ‘, ‘, 1) AS ulice, split_part(locality, ‘, ‘, 2) AS cislo_prahy
from “SrealityEstates”
where locality like ‘%Praha%’
select distinct kod_ku_p, mestska_cast from kata_s_reality_2
select DISTINCT mestska_cast,count(id)
from kata_s_reality_2
where kod_ku_p ISNULL
group by mestska_cast;
select * from kata_s_reality_2
where kod_ku_p ISNULL ;
select ulice, count(ulice) from kata_s_reality_2
where kod_ku_p ISNULL
group by ulice
order by count desc;
update kata_s_reality_2 set kod_ku_p=614131
where mestska_cast=’Březiněves’ or ulice like ‘%Březiněves%’;
update kata_s_reality_2 set kod_ku_p=602582
where mestska_cast=’Benice’ or ulice like ‘%Benice%’ ;
update kata_s_reality_2 set kod_ku_p=730556
where mestska_cast=’Bohnice’or ulice like ‘%Bohnice%’
SELECT *,gps[0] as latitude,gps[1] as longitude, split_part(name, ‘ ‘, 1) AS pron_prodej, split_part(name, ‘ ‘, 3) AS druh_bytu
from kata_s_reality_2;
SELECT druh_bytu , split_part(druh_bytu, ‘ ‘, 1) AS dru, split_part(druh_bytu, ‘ ‘, 2) AS druh_bytu
from kata_s_reality_3
select *,substring(druh_bytu from 1 for 4) as typ_bytu, substring(floor from 1 for 10) as podlazi
from kata_s_reality_3
select distinct(kod_ku_p)
from kata_s_reality_4
select *, split_part(name, ‘ ‘, 1) AS pron_prodej, split_part(name, ‘ ‘, 3) AS druh_bytu
from kata_s_reality_2
NAPOJOVÁNÍ TABULEK
Praha — vše přes kod katastálního území (větší území něž ZSJ u O2)— shp file pro zobrazování

Písek — O2 přes zsj — geojson file pro zobrazování, bohužel nelze napojit 4sq na ZSJ (pouze zobrazení na mapě dle gps)

MOŽNOSTI VÝSLEDKŮ A PŘÍKLADY OTÁZEK S NAPOJENÝMI DATY
všechny dashboardy jsou vždy přes filtry — takže možnost dotázet se na kombinaci všech filtrů — jak pro soukromou osobu, tak pro odborníky
závislost kvality podniků kateg. food na katastrálním území dle průměrného území


rozmístění podniků, jak přiřadil 4sq v rámci katastr.území

rozmístění podniku dle ratingu

konkrétní oblast pro klienta

kontrétní oblast pro klienta pouze vysoké hodnocení

závislost ceny/m2 podle typu bytu— důležité jak pro development, tak pro soukr. osobu — PRODEJ

závislost ceny/m2 podle typu bytu — důležité jak pro development, tak pro soukr. osobu — PRONÁJEM

dle konrétního území — př. Dejvice — prodej

dle konrétního území — př. Dejvice — pronájem

rozdíl mezi luxusními Dejvicemi a Hájemi

rozdíl mezi katastr.územími u sebe

závislost ceny /m2/podlaží + relevantost dle počtu nabídek

závislost ceny /m2/podlaží- porovnání lokalit+ relevantost dle počtu nabídek — PRODEJ

závislost ceny /m2/podlaží- porovnání lokalit+ relevantost dle počtu nabídek — PRONÁJEM

závislost ceny /m2/kvalitě vybavenosti — pronájem

závislost ceny /m2/kvalitě vybavenosti — prodej

počet hodnocení dle lokalit

cenová mapa — možnost prodeje/pronájmu/dražba

VÝSLEDKY V TABLEAU PRO PÍSEK — co zbylo z původního cíle díky omezení dotazů v rámci pilotního provozu O2
porovnání počtu lidí v rámci pouze 3 vybraných hodin -
3- noc (kdo bydlí)
11- den (práce)
20 — večer (živá oblast?)
PRACOVNÍ DEN



VÍKEND



PO JEDNOTLIVÝCH VĚK KATEGORIÍCH — v závislosti na 4sq, pak zjistime, zda škola/park atd.

Souvislost, s vybaveností a kvalitou vybavenosti


vybavenost na míru pro klienta v rámci města

počty lidí v rámci čtvrtí dle jednotlivých hodin — víkend

pohyb lidí v rámci čtvrtí dle jednotlivých hodin — víkend — pouze transit

návštěvy lidí v rámci čtvrtí dle jednotlivých hodin — víkend —visit

počety lidí v rámci čtvrtí dle jednotlivých hodin — prac.den

návštěva lidí v rámci čtvrtí dle jednotlivých hodin — visit

pohyb lidí v rámci čtvrtí dle jednotlivých hodin —transit

hustota obyvatel — vikend

hustota obyvatel — prac.den

ZÁVĚR
Cíl — mít aktuální data — tedy tahání dat třeba přes Keboolu
Vytvořit aplikaci, budou možné vstupy přímo pro klienta (“pověz mi jaký seš a já Ti povím ideální území), aplikace vyhodí možnosti ideálního území.
Pro odborníky nad územím Tableau není vyhovující, protože nedokáže zobrazovat zdánlivě nesouvisející vrstvy, kdy jediná spojka je umístění v rámci území. Pokud je možné najít jasný relationship a spojit zdroje, tak to jde:https://onlinehelp.tableau.com/current/pro/desktop/en-us/maps_shapefiles.html
Pro 2 nesouvisející zdroje ne: https://community.tableau.com/thread/133735
Zdroje: