Skip to content

Instantly share code, notes, and snippets.

@sirex
Created July 30, 2019 15:19
Show Gist options
  • Save sirex/5074304e13310563d12fe698bba34d46 to your computer and use it in GitHub Desktop.
Save sirex/5074304e13310563d12fe698bba34d46 to your computer and use it in GitHub Desktop.
Registrų centro nekilnojamojo turto atvirų duomenų apžvalga
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Registrų centras atveria duomenis\n",
"\n",
"[2019-07-30 Registrtų centras atvėrė primuosius duomenų rinkinius](https://www.registrucentras.lt/naujienos/index.php?mod=news&act=view&id=41765).\n",
"\n",
"Nursprendžiau peržiūrėti kokius duomenis registrų centras atvėrė. Atvirų duomenų katalogą galima rasti čia:\n",
"\n",
"https://www.registrucentras.lt/atviri_duomenys/\n",
"\n",
"Kol kas kataloge yra tik Nekilnojamojo turto įregistruoti objektai. Kartu su duomenimis pateikiama duomenų apžvalga ir statistika, tačiau mane labiausiai domina pirminiai „žali duomenys“. Turėdamas žalius duomenis visas mane dominančias statistikas galėsiu susiskaičiuoti pats. Pirminių duomenų skyriuje galima rasti duomenis apie žemės sklypus ir pastatus. Bandau žiūrėti į pastatų duomenis:\n",
"\n",
"https://www.registrucentras.lt/p/1091\n",
"\n",
"Deja nėra galimybės atsisiųsti visų duomenų vienu kartu, duomenys suskaidyti į atskirus failus, pagal savivaldybes. Iš esmės skaidymas nėra labai blogas dalykas, su sąlyga, jei yra pateiktas atskiras savivaldybių sąrašas iš kurio galėčiau susigeneruoti nuorodas į visus kitus duomenų failus, bet to nėra.\n",
"\n",
"Registrų centras kviečia visas problemas pranešti el. paštu [email protected], tačiau man labiau patinka atviras bendravimas, todėl visas problemas pirmiausiai registruosiu į atvirų duomenų bendruomenės užduočių sąrašą, o tada parašysiu laišką Registrų centrui su nuorodomis į užduotis. Gali būti, kad su tomis pačiomis problemomis susiduria ir kiti žmonės, todėl visada geriau turėti bendrai naudojamą ir visiems matomą užduočių sąrašą.\n",
"\n",
"Pirmoji problema apie sunkiai prieinamas nuorodas užregistruota čia:\n",
"\n",
"https://gitlab.com/atviriduomenys/manifest/issues/766\n",
"\n",
"Kadangi atskiro sąrašo su nurodomis į visus duomenų failus nėra, teks jas traukti iš registrų centro svetainės HTML kodo, kas yra labai nepatogu. Kaip tai daroma galite matyti žemiau:"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import requests\n",
"import lxml.html\n",
"import re"
]
},
{
"cell_type": "code",
"execution_count": 175,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[\n",
" 'https://www.registrucentras.lt/aduomenys/?byla=statiniai_Akmenes_r_sav.csv',\n",
" 'https://www.registrucentras.lt/aduomenys/?byla=statiniai_Alytaus_m_sav.csv',\n",
" 'https://www.registrucentras.lt/aduomenys/?byla=statiniai_Alytaus_r_sav.csv',\n",
"]"
]
},
"execution_count": 175,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"resp = requests.get('https://www.registrucentras.lt/p/1091')\n",
"ns = {'re': 'http://exslt.org/regular-expressions'}\n",
"html = lxml.html.fromstring(resp.content)\n",
"html.make_links_absolute(resp.url)\n",
"nuorodos = html.xpath('//a[re:match(@href, \"statiniai_.*_sav.csv\")]/@href', namespaces=ns)\n",
"nuorodos[:3]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Tikiuosi Registrų Centras nesugalvos atnaujinti savo svetainės, nes tada toks duomenų paėmimas nustos veikti.\n",
"\n",
"Kai jau yra visos nuorodos galima atsisiųsti visus duomenis ir juos sujungti:"
]
},
{
"cell_type": "code",
"execution_count": 177,
"metadata": {},
"outputs": [],
"source": [
"df = pd.concat([\n",
" pd.read_csv(nuoroda, encoding='UTF-16', decimal=',', low_memory=False)\n",
" for nuoroda in nuorodos\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 178,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Eilučių skaičius: 2,579,668\n",
"Stulpelių skaičius: 42\n",
"Naudojama atmintis: 846 MB\n"
]
}
],
"source": [
"print(f'Eilučių skaičius: {df.shape[0]:>10,}')\n",
"print(f'Stulpelių skaičius: {df.shape[1]:>10}')\n",
"print('Naudojama atmintis: %10s MB' % f'{df.memory_usage().sum() / 1024 / 1024:.0f}')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Štai, turiu visų savivaldybiu failus apjungtus į vieną duomenų lentelę. Viso lentelėje yra daugiau kaip 2 milijonai įrašų ir tai užima 846 MB atmintis.\n",
"\n",
"Tačiau užkrauti duomenis nebuvo taip paprasta, pasirodo atiduodant CSV failus nurodyta bloga koduotė, teko spėlioti kokia yra teisinga koduotė, kol galiausiai pavyko išsiaiškinti, kad tai yra `UTF-16`. Įdomu kodėl naudojam `UTF-16`, o ne `UTF-8`? Bet kokiu atveju, užregistravau klaidos pranešimą:\n",
"\n",
"https://gitlab.com/atviriduomenys/manifest/issues/767\n",
"\n",
"Dar kilo problemų dėl kablelių. Duomenyse sveikoji nuo trupmeninės atskirata kableliais, nors Python Pandas pagal nutylėjimą tikise, kad trupmeninė dalis bus atskirta tašku.\n",
"\n",
"Toliau bandom žiūrėti pirmiausia į duomenų sturktūrą:"
]
},
{
"cell_type": "code",
"execution_count": 135,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"Int64Index: 2579668 entries, 0 to 33864\n",
"Data columns (total 42 columns):\n",
"sav_pavadinimas 2579668 non-null object\n",
"seniunijos_pavad 2579668 non-null object\n",
"statinio_kategorija 286067 non-null float64\n",
"obje_tipas 2579668 non-null int64\n",
"pask_tipas 2579668 non-null int64\n",
"atr_uzstatytas_plotas 2579668 non-null float64\n",
"bendras_plotas 2579668 non-null float64\n",
"naudingas_plotas 576600 non-null object\n",
"gyv_plotas 2579668 non-null float64\n",
"verslo_plotas 9387 non-null object\n",
"pagalb_nenaud_plotas 306195 non-null object\n",
"pagalb_naud_plotas 565333 non-null object\n",
"rusiu_plotas 193165 non-null object\n",
"garazu_plotas 88736 non-null object\n",
"patalpu_kaip_atsir_nt_skaicius 2952 non-null float64\n",
"gyv_pask_patalpu_sk 362983 non-null float64\n",
"pastato_energ_naud_klase 97868 non-null float64\n",
"aukstu_skaicius 2579668 non-null int64\n",
"stat_pradzios_metai 930452 non-null float64\n",
"stat_pabaigos_metai 2579487 non-null float64\n",
"modern_pradzios_metai 846 non-null float64\n",
"modern_pabaigos_metai 834 non-null float64\n",
"sildymas 1779132 non-null float64\n",
"vandentiekis 1615672 non-null float64\n",
"nuoteku_salinimas 1610198 non-null float64\n",
"dujos 1529442 non-null float64\n",
"karstas_vanduo 557379 non-null float64\n",
"elektra 1988474 non-null float64\n",
"virykle 634133 non-null float64\n",
"vonios_kambarys 507900 non-null float64\n",
"vedin_kondicionav 426791 non-null float64\n",
"pamatai 2467065 non-null float64\n",
"sienos 2577453 non-null float64\n",
"stogo_konstrukcija 2122247 non-null float64\n",
"stogo_danga 2564187 non-null float64\n",
"perdanga 1968841 non-null float64\n",
"isores_apdaila 1401392 non-null float64\n",
"vidaus_apdaila 692296 non-null float64\n",
"pertvaros 1649423 non-null float64\n",
"grindys 1870926 non-null float64\n",
"langai 1718073 non-null float64\n",
"durys 2155202 non-null float64\n",
"dtypes: float64(31), int64(3), object(8)\n",
"memory usage: 846.3+ MB\n"
]
}
],
"source": [
"df.info(null_counts=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Deje nėra globalaus identifikatoriaus. Kadangi tai yra oficialus NTR registras, tai yra vienintelis tiesos šaltinis, į kurį turėtų rodyti visi kiti duomenų rinkiniai. Tačiau jei nepateikiamas oficialus kiekvieno pastato identifikatorius, tai šie duomenys praranda daug vertės.\n",
"\n",
"Greičiausiai identifikatorius nepateikiamas dėl to, kad pastatas gali būti susijęs su asmens duomenimis. Nors jei imti atskirą lentelę, kurioje būtų pastato globalus identifikatorius ir tarkim koordinatės, tai neturėtų niekaip sietis su asmeniu.\n",
"\n",
"Užregistravau šį pageidavimą/pasiteiravimą:\n",
"\n",
"https://gitlab.com/atviriduomenys/manifest/issues/768\n",
"\n",
"Taip pat nėra savivaldybės ir seniūnijos identifikatorių. Registrų centras valdo adresų registrą, todėl turi tiek savivaldybių, tiek seniūnijų identifikatorius, kurie galėtų būti įtraukti į šią lentelę. Užregistravau pageidavimą:\n",
"\n",
"https://gitlab.com/atviriduomenys/manifest/issues/769\n",
"\n",
"Yra pateiktos instrukcijos, kaip atsidaryti duomenis skaičiuoklės programoje, bet nepaaiškinta kaip sujungti duomenis su klasifikatoriais. Pavyzdžiui, kaip sužinoti, ką reiškai `obje_tipas` skaičiai?"
]
},
{
"cell_type": "code",
"execution_count": 179,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"28 1763610\n",
"20 561100\n",
"22 170858\n",
"26 66112\n",
"24 17988\n",
"Name: obje_tipas, dtype: int64"
]
},
"execution_count": 179,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['obje_tipas'].value_counts()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Turiu įtarimą, kad tie skaičiai ateina iš šios lentelės (kuri pateikta [atskirai](https://www.registrucentras.lt/p/92)):"
]
},
{
"cell_type": "code",
"execution_count": 145,
"metadata": {},
"outputs": [],
"source": [
"tipai = pd.read_csv('https://www.registrucentras.lt/aduomenys/?byla=klas_NTR_objektu_tipai.csv', index_col='obje_tipas', encoding='UTF-16')"
]
},
{
"cell_type": "code",
"execution_count": 160,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>obje_pav</th>\n",
" <th>viso</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>Pagalbinis pastatas</td>\n",
" <td>1763610</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Gyvenamas pastatas</td>\n",
" <td>561100</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Negyvenamas pastatas</td>\n",
" <td>170858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>Sodo pastatas</td>\n",
" <td>66112</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Mišrus pastatas</td>\n",
" <td>17988</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" obje_pav viso\n",
"28 Pagalbinis pastatas 1763610\n",
"20 Gyvenamas pastatas 561100\n",
"22 Negyvenamas pastatas 170858\n",
"26 Sodo pastatas 66112\n",
"24 Mišrus pastatas 17988"
]
},
"execution_count": 160,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pd.concat([df['obje_tipas'].value_counts().rename('viso'), tipai], axis=1, join='inner')[['obje_pav', 'viso']]"
]
},
{
"cell_type": "code",
"execution_count": 166,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABBYAAACMCAYAAADIkCqcAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3deZhU1bnv8e9PRBsFcYBLFFRE9HhNHECimKOmzeSAGTROiVclJnL0mBCHRDkxR0lujheTo0nU4zGYGJQ4jxhJHJLYTseBQSZFxBhMUKOCRkEFEd77x15ttp2q7qqymqJ3/z7PU0/vWnvtvd6qtwutt9deWxGBmZmZmZmZmVkt1mt0AGZmZmZmZmbWdbmwYGZmZmZmZmY1c2HBzMzMzMzMzGrmwoKZmZmZmZmZ1cyFBTMzMzMzMzOrmQsLZmZmZmZmZlaz9RsdgBXDpptuGkOHDm10GNaJ3nzzTTbeeONGh2GdyDkuNue3+JzjYnN+i885LrYi5HfGjBlLIqJ/qX0uLFhdDBgwgOnTpzc6DOtELS0tNDc3NzoM60TOcbE5v8XnHBeb81t8znGxFSG/kp4rt8+XQpiZmZmZmZlZzVxYMDMzMzMzM7OaubBgZmZmZmZmZjXzGgtmZmZmZmZmVVi1ahWLFy9mxYoVFfXv27cv8+fP7+So6qOpqYlBgwbRs2fPio9xYaECkjYB9gEeBkZGxG8bHNI65+1Vqxk8bmq7fRZNGLWWojEzMzMzM+s8ixcvpk+fPgwePBhJHfZftmwZffr0WQuRfTARwdKlS1m8eDHbbbddxcd120shJIWkX+Wery/pFUl3pOefkzQOICLeAEYAVwMzGxJwBSSdKmmjevUzMzMzMzOzf7RixQq22GKLiooKXYkktthii4pnYrTqtoUF4E3gI5J6peefBp5v3RkRt0fEhNzz70fEwRHxUtsTSVpXZn6cClRSMKi0n5mZmZmZmZVQtKJCq1peV3cuLAD8Bmidn/8l4NrWHZJGS7okbR8haZ6k2ZLuz+2/XdIfgN9Lam6d7ZD2XyJpdNqeIOlJSXMk/WfbICSNlzRZ0sOSFko6MbX3lvR7STMlzZX0+dS+saSpKZ55ko6SNBbYCrhX0r2p339Lmi7pCUnfS20V9askbjMzMzMzM1t3vPDCCxx++OFrfdx15S/tjXIdcE4qCOwKXAHsW6LfOcABEfG8pE1z7cOBXSPiVUnNpQaQtAVwKLBTRESb4/N2BUYCGwOPS5oKvAwcGhFvSOoHPCLpduBA4IWIGJXG6BsRr0s6Hdg/Ipakc56dYutBVvzYNSIuqqQf2eyNSuI2MzMzMzPr1jpab65ata5Pt9VWW3HTTTfVNZZKdOvCQkTMkTSYbLbCb9rp+hAwSdINwC259nsi4tUOhnkdWAH8IhUw7ijTb0pEvA28nWYS7AlMBc6TtB+wBhgIDADmAhdIOh+4IyIeKHPOIyWNIcvzlsDOwJwK+z3ZUdzpmDEA/fr155xd3m33jWhpaWl3v63bli9f7hwWnHNcbM5v8TnHxeb8Fp9z3LX07duXZcuWddr5Kzn3ueeey8CBAxkzZgwA5513Hr179+bqq6/m0UcfZf78+Zx88smsWrWKNWvWMHnyZIYOHcoll1zC5MmTATjuuOM45ZRT/uHcK1asqOr3sVsXFpLbgf8EmoEtSnWIiJMk7UV22cQMSXukXW/mur3L+y8taUrHvitpT+CTwOHA14FPlBqmxPNjgP7AHhGxStIioCkinpY0HDgY+IGk30fE9/MHS9oO+Bbw0Yh4TdKk1pgq6VdJ3BExEZgIsM2QoXHB3PZ/nRYd09zuflu3tbS00Nzc3OgwrBM5x8Xm/Bafc1xszm/xOcddy/z58zv1Lg+VnPvYY4/l1FNP5YwzzgBgypQp/OxnP+Paa6+lT58+TJ48mdNPP51jjjmGd955h9WrV/Pkk09yzTXXMG3aNCKCvfbaiwMOOIBhw4a979xNTU3/0Nae7r7GAmSXP3wvIuaW6yBp+4h4NCLOAV4Bti7R7TlgZ0kbpssGPpmO7Q30jYjfAKcBu5UZ5vOSmtKlE83ANKAv8HIqKuwPbJvOuRXwVkT8CvgR2SUZAMuA1t/ATcgKH69LGgAclBurw35VxG1mZmZmZmZr2bBhw3j55Zd54YUXmD17Npttthlbb/33r6p777035513Hueffz7PPfccvXr14sEHH+TQQw9l4403pnfv3hx22GE88EC5CfCV6/YzFiJiMXBRB91+JGkHQMDvgdnA7m3O85d0qcQ84E/A42lXH2CKpKZ0/OllxpgD3Av0A/5vRLwg6Wrg15LmAtOBp1LfXVJMa4BVwMmpfSJwp6QXImJ/SY+nY/5CdjkHVfSrNG4zMzMzMzNrgCOOOIKbbrqJv/71rxx11FHv2/flL3+Zvfbai6lTp3LwwQfzs5/9rNPi6LaFhYjoXaKtBWhJ25OASWn7sBKneG9/7vgzgTNL9N2zgpDmRMRxbc63BNi7RN9FwF1tGyPiYuDi3PPRpQaqtB+VxW1mZmZmZmYNcNRRR3HiiSeyZMkS7rvvPlauXPnevmeffZYhQ4YwduxY/vznPzNnzhz2228/Ro8ezbhx44gIbr311vfWW/ggum1hweqrV88eLKhx5VIzMzMzMzOr3oc//GGWLVvGwIED2XLLLVm0aNF7+2644QYmT55Mz549+dCHPsR3vvMdNt98c0aPHs2ee2Z/Q/7a175W1VoK5biwsA6IiPGNjsHMzMzMzMxq09HtIZctW9Zpiz3Onfv35QIHDx7MvHnzABg3bhzjxo37h/6nn346p59e3yvdvXijmZmZmZmZmdXMhQUzMzMzMzMzq5kLC2ZmZmZmZmZWMxcWzMzMzMzMzKoUEY0OoVPU8rpcWDAzMzMzMzOrQlNTE0uXLi1ccSEiWLp0KU1NTVUd57tCmJmZmZmZmVVh0KBBLF68mFdeeaWi/itWrKj6y3qjNDU1MWjQoKqOcWHBzMzMzMzMrAo9e/Zku+22q7h/S0sLw4YN68SIGsuXQpiZmZmZmZlZzVxYMDMzMzMzM7Oa+VIIq4u3V61m8LipDRt/0YRRDRvbzMzMzMysO/OMBTMzMzMzMzOrmQsLZUg6W9ITkuZImiVpryqObZZ0R2fGV2bc0ZK2qlc/MzMzMzMzs474UogSJO0NHAIMj4iVkvoBGzQ4rEqMBuYBL9Spn5mZmZmZmVm7PGOhtC2BJRGxEiAilkTECwCSPinpcUlzJV0hacPUfqCkpyTNBA5rPZGkzSXdlmY+PCJp17aDpRkEUyS1SFoo6dzcvtskzUizJ8akth6SJkmal+I4TdLhwAjg6jTDopekcyRNS/0mKlNRvzTOWElPptiv66w328zMzMzMzLouFxZKuxvYWtLTki6V9HEASU3AJOCoiNiFbMbHyan9cuCzwB7Ah3Ln+h7weETsCnwHuKrMmHsCXwR2BY6QNCK1nxARe5AVA8ZK2gLYHRgYER9JcfwyIm4CpgPHRMTuEfE2cElEfDQiPgL0Ag6ptF8aexwwLMV+Uo3vpZmZmZmZmRWYL4UoISKWS9oD2BfYH7he0jjgceBPEfF06nolcArQktoXAkj6FTAm9dmHrGBARPxB0haSNomIN9oMe09ELE3H35KOm05WTDg09dka2AFYAAyRdDEwlawQUsr+ks4ENgI2B54Afl1FvzlkMxtuA25re1CaQTEGoF+//pyzy7tlwuh8LS0tDRu7u1i+fLnf54JzjovN+S0+57jYnN/ic46Lrej5rbiwIKl/RLzSmcGsSyJiNVnBoEXSXOB4ssJCpw3Z9rmkZuBTwN4R8ZakFqApIl6TtBtwANlMgiOBE/IHp1kUlwIjIuIvksYDTW0H7aDfKGA/spkYZ0vaJSLeqx5ExERgIsA2Q4bGBXMbV6dadExzw8buLlpaWmhubm50GNaJnONic36LzzkuNue3+JzjYit6fqu5FOIhSXdL+qqkzTotonWApH+StEOuaXfgObKZAoMlDU3txwL3AU+l9u1T+5dyxz4AHJPO20y2dkPb2QoAn07rMfQCvgA8BPQFXktFhZ2Akek8/YD1IuJm4LvA8HSOZUCftN1aHFgiqTdweG6sDvtJWg/YOiLuBc5KsfQu9X6ZmZmZmZlZ91Xxn5gjYkdJewJHk/31+knguoj4VadF1zi9gYslbQq8CzwDjImIFZK+AtwoaX1gGnBZunPEGGCqpLfIigmtX9zHA1dImgO8RTbzoZTHgJuBQcCvImJ6milxkqT5ZEWNR1LfgcAv05d/gH9LPycBl0l6G9ibbN2HecBfU6xU0a8H8CtJfQEBF0XE3yp698zMzMzMzKzbqGruekQ8Bjwm6TzgQrI1BgpXWIiIGcDHyuz7PTCsRPudwE4l2l8lm4HQkcUR8b5+6a4UB5XpP7xtQ5rBcHOu6bvpUVM/snUezMzMzMzMzMqqZo2FTYBDyWYsbA/cSnYnAzN69ezBggmjGh2GmZmZmZmZrWXVzFiYTXZngO9HxMOdFE+3FBGTyC5PMDMzMzMzM+tSqiksDImItncuMDMzMzMzM7NurJrCQj9JZwIfJnfbwoj4RN2jMjMzMzMzM7MuoZrbTV5NdlvF7YDvAYt4/50GzMzMzMzMzKybqaawsEVE/AJYFRH3RcQJgGcrmJmZmZmZmXVj1VwKsSr9fFHSKOAFYPP6h2RmZmZmZmZmXUU1hYUfSOoLnAFcDGwCnNYpUZmZmZmZmZlZl1BxYSEi7kibrwP7d044ZmZmZmZmZtaVVLzGgqQhkn4taYmklyVNkTSkM4MzMzMzMzMzs3VbNYs3XgPcAHwI2Aq4Ebi2M4IyMzMzMzMzs66hmjUWNoqIybnnv5L07XoHZF3T26tWM3jc1EaHUQiLJoxqdAhmZmZmZmYVq6aw8FtJ44DrgACOAn4jaXOAiHi1E+IzMzMzMzMzs3VYNZdCHAn8C3Av0AKcDBwNzACmlzpAUki6IPf8W5LG1xqstU/Sd+rZz8zMzMzMzKwjFRcWImK7dh5DJH26xGErgcMk9atfyNaOSgsGLiyYmZmZmZlZXVQzY6Ej55doexeYCJzWdoek/pJuljQtPf45136PpCck/VzSc5L6Sfq+pFNzx/+HpG9Kuk7SqFz7JEmHS+oh6Ufp3HMk/Uva3yypRdJNkp6SdLUkpX3npP7zJE3MtbdI+rGk6ZLmS/qopFskLZT0g9zYt0makWIfk9p6pJjmSZorqdR7MUnSZen8T0s6JLUPlvSApJnp8bHUvqWk+yXNSufdV9IEoFdqu7qdeCrt12HcZmZmZmZmZoqI+pxIejwihrVpW052B4k5wG7AiUDviBgv6Rrg0oh4UNI2wF0R8b8lXQI8HxH/T9KBwG+B/kBv4JaIGC5pPWAhsCewH/CFiDhe0gbAH4EdgWOB/xURP5C0IfAQcASwLTAF+DDwQmr/dopj89a1IiRNBm6IiF9LagEejYizJH0TOAvYA3g1jbdbRCxtPV5SL2Aa8HFgMDAhIj6dzrtpRPytzfs0iexuGwcD25NdbjKUrPCzJiJWSNoBuDYiRkg6A2iKiP+Q1INsYc1lkpZHRO/cef8hnhRnh/0qjHsMMAagX7/+e5zzk8tL/WpYlXYZ2LfRIZS0fPlyevfu3XFH67Kc42JzfovPOS4257f4nONiK0J+999//xkRMaLUvmoWb+xIyQpFRLwh6SpgLPB2btengJ3TpACATST1BvYBDk3H3inptbS9SNJSScOAAcDj6Uvyb4GfpuLBgcD9EfG2pM8Au0o6PJ2/L7AD8A7wWEQsBpA0i+xL9IPA/pLOBDYCNgeeAH6djr89/ZwLPBERL6bjnwW2BpYCYyUdmvptncZbAAyRdDEwFbi7zPt3Q0SsARamc+4E/Am4RNLuwGqygglkX/6vkNQTuC0iZpU5Z6l4llbYr8O4I2Ii2YwUthkyNC6YW89fp+5r0THNjQ6hpJaWFpqbmxsdhnUi57jYnN/ic46LzfktPue42Iqe37X1TfAnwEzgl7m29YCREbEi3zFXaCjl58Bosr/uXwGQ/prfAhxAdqeK61pPBXwjIu5qc/5msrUfWq0G1pfUBFwKjIiIvyhbZLIp16/1mDVtjl+Tjm8mK5bsHRFvpZiaIuI1Sbul+E4iWwTzhBKvrW1hJsguIXmJbLbHesCK9Jrvl7QfMAqYJOnCiLiqxOv8h3jaDlqHuM3MzMzMzKwbq+caC4vK7UiXF9wAfDXXfDfwjdYn6a/ykF2acGRq+wywWe6YW8lmJXwUyBcMrge+AuwL3Jna7gJOTn/VR9KOkjZuJ/7WL91L0syJw9vpW0pf4LX05XwnYGQatx+wXkTcDHwXGF7m+CMkrSdpe2AI2YyBvsCLaSbDsUCPdM5tgZci4nKyYkvrOVe1vt5y8VTar4q4zczMzMzMrBureMaCpI2AM4BtIuLEdM3/P0XEHQARcVgHp7gA+Hru+VjgvyTNSXHcT/aX8e8B10o6FngY+CuwLI3xjqR7gb9FxOrcue4GJgNTIuKd1PZzskscZiqbBvEK8IVywUXE3yRdDsxLY07r4PW0dSdwkqT5ZEWBR1L7QOCXaV0IgH8rc/yfgceATYCT0kyMS4GbJR2Xzv9m6tsMfFvSKmA5cFxqnwjMkTSTbHZBqXgq7Vdp3GZmZmZmZtaNVXMpxC+BGcDe6fnzwI3AHeUOyC8QGBEvka1d0Pp8CdmlC229DhwQEe9K2hv4aESsBEhfckeSLcKYH2cV2ZoI+bY1ZLdVbHtrxZb0aO339dz2d8n+Ot/2dTTnttse35zrelCJ1wOV/bX/dxFxUptxFwK75prOSu1XAleWiPOs1j7txVNpPzxLwczMzMzMzDpQTWFh+4g4StKXANLU+XYXRKjRNsANqYjwDtmdJJC0M1kR49b0hdvWIb169mDBhFEddzQzMzMzM7NCqaaw8E66HWEApLUAVrZ/SPVS0WBYifYnydYeKJyIGN3oGMzMzMzMzMxqUU1h4Vyy6/y3lnQ18M9kd2gwMzMzMzMzs26q4sJCRNyTFvsbSXYrx2+mdRLMzMzMzMzMrJvqsLAgaaeIeEpS60J+L6af20jaGng1Ip7rtAjNzMzMzMzMbJ1VyYyF04ExZLeLLGULSbMj4tj6hWVmZmZmZmZmXUGHhYWIGJN+7l+uj6S76xmUmZmZmZmZmXUNFa+xIKkJ+FdgH7I7QzwAXBYRKyLiM50Un5mZmZmZmZmtw6q5K8RVwDLg4vT8y8Bk4Ih6B2VmZmZmZmZmXUM1hYWPRMTOuef3Snqy3gGZmZmZmZmZWdexXhV9Z0oa2fpE0l7A9PqHZGZmZmZmZmZdRSW3m5xLtqZCT+B/JP05Pd8WeKpzw7Ou4u1Vqxk8bmqjw7BOdMYu7zLaOS60RuR40YRRa3U8MzMzM6u/Si6FOCS3vRmwb9q+H/hbPYORNAD4MTASeA14B/hhRNxaz3GKSNJg4GMRcU09+pmZmZmZmZlVosNLISLiuYh4DvgC2WKN/YD+aftz9QpEkoDbgPsjYkhE7AEcDQyq1xgFN5hsQc169TMzMzMzMzPrUDVrLHwVGBkR50bEOcDewIl1jOUTwDsRcVlrQypqXAwg6X5Ju7fuk/SgpN0kLZK0aa59oaQBkvpLulnStPT457R/vKQrJLVIelbS2Nyxt0maIekJSWNy7csl/Si1/07SnrnjP5f6DJb0gKSZ6fGx1L5lin2WpHmSWmd8kDv/Ikk/lDRX0mOShqb2z0p6VNLjadwBqf3j6Xyz0r4+wARg39R2Wrl4Ku1XSdxmZmZmZmZm1RQWBKzOPV+d2urlw8DMdvb/AhgNIGlHoCkiZgNTgENT+17AcxHxEvBT4McR8VHgi8DPc+faCTgA2BM4V1LP1H5CmikxAhgraYvUvjHwh4j4MNktN38AfDqN+/3U52Xg0xExHDgKuCi1fxm4KyJ2B3YDZpV5fa9HxC7AJcBPUtuDZMWcYcB1wJmp/VvAKemc+wJvA+OAByJi94j4cTvxVNqv0rjNzMzMzMysG6vmdpO/BB6V1LrewRfIvux3Ckn/BexDNovho8CNwL9L+jZwAjApdb0eOCfFd3R6DvApYOfsCgsANpHUO21PjYiVwEpJLwMDgMVkxYRDU5+tgR2ApWRrPdyZ2ucCKyNiVVrYcnBq7wlckmZVrAZ2TO3TgCtS8eK2iCj3Bf3a3M8fp+1BwPWStgQ2AP6U2h8CLpR0NXBLRCzOvc5W5eKptF+HcadZHWMA+vXrzzm7vFtmCCuCAb2yxf2suBqR45aWlrU6Xne2fPlyv98F5xwXm/NbfM5xsRU9vxUXFiLiQkktZF/2Ab4SEY/XMZYnyGYWtI53iqR+pFtaRsRbku4BPg8cCeyRuj4MDJXUn6zY8YPUvh7ZX/tX5AdJX8BX5ppWA+tLaiYrRuydxmoBmlKfVRERaXtN6/ERsUZS63t4GvAS2V/31wNWpD73S9oPGAVMknRhRFxV4vVHie2LgQsj4vYU3/h0zgmSpgIHAw9JOqDE+UrGU2m/SuKOiInARIBthgyNC+ZWU6eyruaMXd7FOS62RuR40THNa3W87qylpYXm5uZGh2GdyDkuNue3+JzjYit6fqu5FIKImBkRF6VHPYsKAH8AmiSdnGvbqE2fn5NN1Z8WEa+lmAK4FbgQmB8RS1Pfu4FvtB6YX5+hjL7Aa6mosBPZnSmq0Rd4MSLWAMcCPdK42wIvRcTlKf7hZY4/Kvfz4dw5n0/bx+dey/YRMTciziebWbAT2SUafTqKp9J+VcRtZmZmZmZm3VhVhYXOlAoEXwA+LulPkh4DrgTOyvWZAbxBdtlD3vXA/+Hvl0EAjAVGSJoj6UngpA5CuJNs5sJ8sgUOH6nyJVwKHC9pNtkX/TdTezMwW9LjZEWDn5Y5fjNJc4Bvks0igGyGwo2SZgBLcn1PTQsqzgFWAb8F5gCrJc2WdFo78VTar9K4zczMzMzMrBtbp+Y1R8SLZOsklCRpK7JiyN1tjptOm4UkI2IJf58FkG8f3+b5R3JPDyoTV+/cdtvje6efC4Fdc7vOSu1XkhVIOvKjiDgr3xARU8gWp2wbzzfatiWfaPO8VDyrKuxXadxmZmZmZmbWja0zMxY6Iuk44FHg7DRt38zMzMzMzMwabJ2asdCetHBgqUUPu7yIGNzoGD6oXj17sGDCqEaHYZ2opaXFC+0VnHNsZmZmZrXoMjMWzMzMzMzMzGzd48KCmZmZmZmZmdXMhQUzMzMzMzMzq5kLC2ZmZmZmZmZWMxcWzMzMzMzMzKxmLiyYmZmZmZmZWc1cWDAzMzMzMzOzmrmwYGZmZmZmZmY1c2HBzMzMzMzMzGqmiGh0DFYA2wwZGusd+dNGh2Gd6Ixd3uWCues3OgzrRM5xsTm/xeccF5vzW3zOcbG1l99FE0at5WhqI2lGRIwotc8zFszMzMzMzMysZl2qsCBptaRZkuZJulHSRnU+/2hJl6TtSZIOL9FnhKSLKjjX/9QztgrGGyzpy/XqZ2ZmZmZmZlaJLlVYAN6OiN0j4iPAO8BJazuAiJgeEWMr6PextRFPzmCgkoJBpf3MzMzMzMzMOtTVCgt5DwBDASTdJmmGpCckjWntIOmrkp6W9Jiky3OzET4r6VFJj0v6naQBZcb4lKTp6RyHpGObJd2RtsdLukJSi6RnJb1XcJC0PP3cUtL9uZkW+7YdRNIiST+UNDfF2vq6SsYp6ePpfLPSvj7ABGDf1HZampnwgKSZ6dFa6KioXyVxm5mZmZmZmXXJ1UEkrQ8cBNyZmk6IiFcl9QKmSboZ2BD4d2A4sAz4AzA79X8QGBkRIelrwJnAGSWGGgzsCWwP3Nv6hb+NnYD9gT7AAkn/HRGrcvu/DNwVEf8hqQdQ7vKN1yNiF0nHAT8BDmknzm8Bp0TEQ5J6AyuAccC3IqK1ALIR8OmIWCFpB+BaYEQV/SqN28zMzMzMzLqxrlZY6CVpVtp+APhF2h4r6dC0vTWwA/Ah4L6IeBVA0o3AjqnPIOB6SVsCGwB/KjPeDRGxBlgo6VmyIkJbUyNiJbBS0svAAGBxbv804ApJPYHbImJWiXNA9oW+9eePO4jzIeBCSVcDt0TEYkltz9cTuETS7sDq3GuvtF+HcafZIWMA+vXrzzm7vFtmCCuCAb2y1WytuJzjYnN+i885Ljbnt/ic42JrL78tLS1rN5hO0NUKC29HxO75BknNwKeAvSPiLUktQFMH57kYuDAibk/Hjy/Tr+29OEvdm3Nlbns1bd7TiLhf0n7AKGCSpAsj4qoOxmrdLhlnREyQNBU4GHhI0gElznca8BKwG9klLytK9Cnbr5K4I2IiMBGy20369jjF5lsgFZ9zXGzOb/E5x8Xm/Bafc1xs7d5u8pjmtRtMJ+jKayy06gu8looKOwEjU/s04OOSNkuXTnyxzTHPp+3j2zn3EZLWk7Q9MARYUG1wkrYFXoqIy4Gfk12aUcpRuZ8PtxenpO0jYm5EnE/2Onciu9yjT+58fYEX04yLY4Eeqb2iflXEbWZmZmZmZt1YEUpidwInSZpP9sX/EYCIeF7SecBjwKvAU8Dr6ZjxwI2SXiNbe2G7Muf+czp+E+CktA5BtfE1A9+WtApYDhxXpt9mkuaQzYD4Ugdxnippf2AN8ATw27S9WtJsYBJwKXBzWrPhTuDNdOycCvtVGreZmZmZmZl1Y12qsBARvUu0rSRbyLGUayJiYpqxcCtwWzpmCjClxLkmkX3ZJiJGl4mhBWhJ2+Pb7PtI21gj4krgyvKv6j0/ioiz2pyvXJzfKHOOT7R5vmtu+6x07KoK+1Uat5mZmZmZmXVjXaqwUIPxkj5FtubC3aTCgtVfr549WDBhVKPDsE7U0tJSiOu/rDznuNic3+JzjovN+S0+57jYip7fQhcWIuJbjY6hEhExuNExmJmZmZmZmdWiCIs3mpmZmZmZmVmDuLBgZmZmZmZmZjVzYcHMzMzMzMzMaubCgpmZmZmZmZnVTBHR6BisACQtAxY0Og7rVP2AJY0OwjqVc1xszm/xOcfF5vwWn3NcbEXI77YR0b/UjkLfFcLWqgURMaLRQVjnkTTdOS4257jYnN/ic46LzfktPue42C8/VyIAAAZhSURBVIqeX18KYWZmZmZmZmY1c2HBzMzMzMzMzGrmwoLVy8RGB2CdzjkuPue42Jzf4nOOi835LT7nuNgKnV8v3mhmZmZmZmZmNfOMBTMzMzMzMzOrmQsL9oFJOlDSAknPSBrX6Hjs/SRtLeleSU9KekLSN1P7eEnPS5qVHgfnjvm3lM8Fkg7ItZfMtaTtJD2a2q+XtEFq3zA9fybtH7z2Xnn3ImmRpLkpl9NT2+aS7pG0MP3cLLVL0kUpL3MkDc+d5/jUf6Gk43Pte6TzP5OOVXtjWP1I+qfc53SWpDcknerPcNcm6QpJL0ual2tr2Ge2vTGsemXy+yNJT6X391ZJm6b2wZLezn2WL8sdU7c8lvtdsdqUyXFD/10uN4ZVr0x+r8/ldpGkWandn2GAiPDDj5ofQA/gj8AQYANgNrBzo+Py43052hIYnrb7AE8DOwPjgW+V6L9zyuOGwHYpvz3ayzVwA3B02r4MODlt/ytwWdo+Gri+0e9HUR/AIqBfm7YfAuPS9jjg/LR9MPBbQMBI4NHUvjnwbPq5WdreLO17LPVVOvag9sbwo9Py3AP4K7CtP8Nd+wHsBwwH5uXaGvaZLTeGH3XN72eA9dP2+bn3fnC+X5vz1CWP7f2u+FHXHDfs3+VyYzT6feqqj1L5bbP/AuCctO3PcIRnLNgHtifwTEQ8GxHvANcBn29wTJYTES9GxMy0vQyYDwxs55DPA9dFxMqI+BPwDFmeS+Y6VV4/AdyUjr8S+ELuXFem7ZuAT7ZWam2tyL//bfNyVWQeATaVtCVwAHBPRLwaEa8B9wAHpn2bRMQjkf3X7SpK5zg/hnWOTwJ/jIjn2unjz3AXEBH3A6+2aW7kZ7bcGFaDUvmNiLsj4t309BFgUHvnqHMeS/6ufKAX2c2V+QyXszb+XS43htWgvfym9/tI4Nr2ztHdPsMuLNgHNRD4S+75Ytr/0moNlKbLDQMeTU1fT9OsrtDfp7CXy2m59i2Av+X+Zyn/O/DeMWn/66m/1V8Ad0uaIWlMahsQES+m7b8CA9J2tTkemLbbtrc3hnWOo3n//8j4M1wsjfzM+r/na9cJZH+VbLWdpMcl3Sdp39RWzzw6v2tPo/5ddo7Xnn2BlyJiYa6t23+GXVgw6yYk9QZuBk6NiDeA/wa2B3YHXiSb0mVd1z4RMRw4CDhF0n75nalS3qm3AVobY3Rn6frazwE3piZ/hgvMn9niknQ28C5wdWp6EdgmIoYBpwPXSNqk0vM5j+sU/7vcPXyJ9xf5/RnGhQX74J4Hts49H5TabB0iqSdZUeHqiLgFICJeiojVEbEGuJy/T5crl9Ny7UvJpmmt36b9fedK+/um/lZnEfF8+vkycCtZPl9qncqcfr6culeb4+d5/5TdfI7LjWH1dxAwMyJeAn+GC6qRn1n/93wtkDQaOAQ4Jn2ZIE1dX5q2Z5BdG78j9c2j87sWNPjfZed4LUjv+WHA9a1t/gxnXFiwD2oasENauXYDsmm6tzc4JstJ14H9ApgfERfm2vPXzh4KtK56eztwdFp1eDtgB7KFZ0rmOv2P0b3A4en444EpuXO1rlp7OPCH1v+RsvqRtLGkPq3bZAuEzeP973/bvByXVh4eCbyepuPdBXxG0mZp+uZngLvSvjckjUy/T8dROsf5Maz+3vcXEn+GC6mRn9lyY1idSDoQOBP4XES8lWvvL6lH2h5C9pl9ts55LPm70pmvtztq8L/L5caw+voU8FREvHeJgz/DSawDK0j60bUfZKuXPk1WnTu70fH48Q/52YdsetUcYFZ6HAxMBuam9tuBLXPHnJ3yuYC0em17uSZbzfgxsoWCbgQ2TO1N6fkzaf+QRr8fRXyk9392ejzRmhuyay5/DywEfgdsntoF/FfK41xgRO5cJ6R8PQN8Jdc+gux/kP4IXAKovTH8qHuONyb7i1TfXJs/w134QVYkehFYRXat7Fcb+Zltbww/6pbfZ8iukW79b3Hryv5fTP92zwJmAp/tjDyW+13xo645bui/y+XG8KM++U3tk4CT2vT1ZzjivRdmZmZmZmZmZlY1XwphZmZmZmZmZjVzYcHMzMzMzMzMaubCgpmZmZmZmZnVzIUFMzMzMzMzM6uZCwtmZmZmZmZmVjMXFszMzMzMzMysZi4smJmZmZmZmVnNXFgwMzMzMzMzs5r9f41PCyGqF5t2AAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 1152x144 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"pd.concat([df['obje_tipas'].value_counts().rename('viso'), tipai], axis=1, join='inner').set_index('obje_pav')[['viso']].plot.barh(figsize=(16, 2), grid=True);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Panašu, kad taip.\n",
"\n",
"Duomenų pateikimas nėra labai paprastas, tačiau sugaišus šiek tiek laiko pavyko juos „atsidaryti“. Dabar bandysiu pasiskaičiuoti kokias nors statistikas.\n",
"\n",
"Įdomu kokiose savivaldybėse daugiausia pastatų, top 10 savivaldybių, pagal pastatų skaičių:"
]
},
{
"cell_type": "code",
"execution_count": 167,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1152x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df['sav_pavadinimas'].value_counts()[:10].plot.barh(figsize=(16, 4), grid=True);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"O kaip dėl seniniūnijų top 10, pagal pastatų skaičių?"
]
},
{
"cell_type": "code",
"execution_count": 168,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABAEAAAD4CAYAAACdUf/aAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3de5hdZX33//eHECESBWnSXErFiFgViSIgigc6eEAlFrVSDw/9KVWb0l89tcGKjxSx1aexilW0goAaDxRFPKGo4IENeEAgEkgQ4wFi6+HBA4qMYiTh+/yx18hmmMlMJhN21t7v13Xta9a+173u9V37yx6yv/te96SqkCRJkiRJg2+HfgcgSZIkSZLuGhYBJEmSJEkaEhYBJEmSJEkaEhYBJEmSJEkaEhYBJEmSJEkaEjv2OwD1x2677VZ77713v8PQDP3mN79hl1126XcY2grmsN3MX/uZw3Yzf+1nDtvN/LXDqlWrfl5VC8e3WwQYUosWLeKKK67odxiaoU6nw8jISL/D0FYwh+1m/trPHLab+Ws/c9hu5q8dkvxgonZvB5AkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUi4MOCQuuXWTSw+7rx+h6EZWr5kI0ebv1YbpByuX7G03yFIkiRpmpwJ0EiyS5KnJ5mT5C/7HY8kSZIkSbNt4IoASSrJh3qe75jkZ0k+s7njquo3wBHAKcDN0zjP15qfIxONneSIJMdt8QVIkiRJkrSNDFwRAPgNsG+Sec3zJwM/muaxrwOuqqrPT9Wxqh4zxf5zq2rFNM8rSZIkSdI2N4hFAIDPAmM3qT4fOGtsR5KDknw9yZVJvpbkQU37GcDngL9pZg68rml/VZLLk1yd5PU944yOP2mSRzbjPiDJ0Une2bSvTHLkFMfukuS8JFclWZvkuU37AUkuSrIqyflJ7t20d5K8KcllSb6T5PFb/apJkiRJkgbaoC4M+GHghGaa/sOA9wJjH5K/DTy+qjYmeRLwf4BnV9VLAJLcD/g8sDLJYcADgYOAAOcmOaSqLh5/wiSPAd4BPKOq/nsGH8qfCvy4qpY24+2aZG7PmD9rCgNvBF7UHLNjVR2U5HC6sxietLkTJFkGLANYsGAhJyzZuIUhanuxaF53YTm11yDlsNPp9DuEu9zo6OhQXvcgMYftZv7azxy2m/lrt4EsAlTV1UkW050F8Nlxu3cF3p/kgUABc8d2JNkZ+Cjwsqr6QZKXAYcBVzZd5tMtCowvAjwEOA04rKp+PMOw1wAnJXkT8JmquiTJvsC+wBeSAMwBftJzzMebn6uAxVOdoKpOa+Jkz732rpPWDGT6h8LyJRsxf+02SDlcf9RIv0O4y3U6HUZGRvodhraCOWw389d+5rDdzF+7Dca/QCd2LvAWYAT4o572fwUurKpnNYWCTs++U4GPV9UXm+cB/q2q3j3FuX4C7Aw8ApioCLCR5taLJDsAdxvfoaq+k2R/4HDgDUm+BHwCuKaqDp7kvBuan5sY7FxKkiRJkmbBoK4JAN1bAF5fVWvGte/K7QsFHj3WmOTvgXuMW8zvfOBFSeY3ffZI8scTnOtXdNcg+LckIxPsXw8c0GwfQc/sg57z3wf4bVV9CHgzsD+wDliY5OCmz9wkD53sgiVJkiRJ2pyBLQJU1Q+r6uQJdv073Q/rV3LHb8+PBZYkWd08jqmqC4D/Ar6eZA1wDnCPSc53A/B04D+TPGrc7tOBP0tyFXAw3b9gMN4S4LIkq+ne3/+Gqvo9cCTwpubY1cBm/ypBkvskGX8LhCRJkiRJgzeFvKrmT9DWoZn2X1VfB/60Z/fxTfv9Jxnv7cDbJzvPuLH/Gxj7pv4bwMqm/Qbg0QDNny5cOMF459OdeTC+fTVwyATtIz3bP6dZE6BZk+Dwia5FkiRJkjTcBq4I0AI7051xcGxVvaVfQcybO4d1K5ZO3VHbpU6nM5SLsQ0ScyhJkqR+sAhwF6uqXwKP7HcckiRJkqThM7BrAkiSJEmSpDuyCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pDYsd8BqD9uuXUTi487r99haIaWL9nI0eav1YYth+tXLO13CJIkScKZAJIkSZIkDY3NFgGSLE6ydlzbiUmObbY7SQ7clgFOR5KvbaNxj0nyghkct1+Sw7dFTJIkSZIkzdR2fTtAkh2rauNU/arqMdvi/FV16gwP3Q84EPjsLIYjSZIkSdJWmZXbAZLskGRlkjc0z0eTvDnJNUm+mOSgZtbAdUmOaPrMafpcnuTqJH/btI8kuSTJucC3mrZ/TrIuyVeSnNUzE+EBST6fZFVzzIOb9r9MsjbJVUkuniDekSQXJflUE9OKJEcluSzJmiQPaPqduKXnSnI34F+A5yZZneS5SXZP8snmOi9N8rAJYnpoc/7VTb8HNu1/1dP+7iRzel7jNzbnvTTJotnIpSRJkiRpcM3GTIAdgTOBtVX1xqZtF+DLVfWqJJ8A3gA8GdgHeD9wLvBi4KaqemSSnYCvJrmgOX5/YN+quj7JI4FnAw8H5gLfBFY1/U4Djqmq7yZ5FPAu4AnACcBTqupHSXabJO6HAw8BbgSuA86oqoOSvAJ4GfDKcf2nda6q+n2SE4ADq+qlAEneAVxZVc9M8gTgA3RnC/Q6Bnh7VZ3ZFBLmJHkI8FzgsVV1a5J3AUc1x+8CXFpVr03y78DfNK/zpJIsA5YBLFiwkBOWTDnJQtupRfO6C8upvYYth51Op98hzKrR0dGBu6ZhYw7bzfy1nzlsN/PXblMVAWoa7e8Gzu4pAAD8Hvh8s70G2NB8iF0DLG7aDwMeluTI5vmuwAObYy+rquub9scCn6qq3wG/S/JpgCTzgccAH00ydt6dmp9fBVYmORv4+CTXcHlV/aQZ6/vAWAFiDXBob8dZONfj6BYyqKovJ/mjJPesql/39Pk68NokfwJ8vCk2PBE4ALi8Oe884KdN/98Dn2m2V9EtsmxWVZ1Gt5jBnnvtXSet2a7vBtFmLF+yEfPXbsOWw/VHjfQ7hFnV6XQYGRnpdxjaCuaw3cxf+5nDdjN/7TbVv0B/AdxrXNvuwPU9z78GHJrkpOaDOsCtVTVWKLgN2ABQVbclGTtngJdV1fm9gycZAX4zjdh3AH5VVeO/Uaeqjmm+rV8KrEpyQFX9Yly3DT3bt/U8v407vy5bdK5pxH4nVfVfSb7RjPPZ5vaIAO+vqtdMcEjva7xpgpglSZIkSbqDza4JUFWjwE+aKewk2R14KvCVnm7vobsA3tk9H/Cn43zg75LMbcb+0yS7TNDvq8CfJ9m5+Ub+6U1svwauT/KXzfFJ8vBm+wFV9Y2qOgH4GXDfLYjrTmZwrpuBe/QMcQndafxjRY6fj5sFQJK9gOuq6mTgU8DDgC8BRyb546bP7knutzXXIkmSJEkaXtNZGPAFwD8nWQ18GXh9VX2/t0NVvRW4EvhgkukuNngG3YX/vpnunyF8NxN8m11Vl9NdQ+Bq4HN0p+vf1Ow+CnhxkquAa4BnNO1vbhb4W0t3psJV04xpc7bkXBcC+4wtDAicCByQ5GpgBfDCCcZ/DrC2eZ33BT5QVd8CjgcuaI79AnDvzQWZ5Igk/7KV1ypJkiRJGkC5fUb59ivJ/KoaTXJ34GJgWVV9s99xtdmDHvSgWrduXb/D0Ax5H1b7mcN2M3/tZw7bzfy1nzlsN/PXDklWVdWB49vbch/5aUn2AXame4+8BQBJkiRJkrZQK4oAVfW/+h2DJEmSJEltN9379yVJkiRJUstZBJAkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUhYBJAkSZIkaUjs2O8A1B+33LqJxced1+8wNEPLl2zkaPPXauaw3WY7f+tXLJ21sSRJkjbHmQCSJEmSJA0JiwBbIMnjk+yRZCTJffodjyRJkiRJW2JoigBJRmd43BlJ9mmergbeATyrqn7c7O8kOXCC4z6bZLcZByxJkiRJ0ixzTYApVNVLerZvBv5imscdvs2CkiRJkiRpBoZmJgBAut6cZG2SNUme27SPNN/on5Pk20nOTJJmXyfJgUnmJFnZc+w/jBt7h2b/G5rn65MsaLb/sTlubZJXThDXhGMneUCSzydZleSSJA9u2lcmOTnJ15Jcl+TIbfvKSZIkSZIGwbDNBPgLYD/g4cAC4PIkFzf7HgE8FPgx8FXgscBXeo7dD9ijqvYFGDfVf0fgTGBtVb2x94RJDgD+GngUEOAbSS6qqiunMfZpwDFV9d0kjwLeBTyh2Xdv4HHAg4FzgXOmuvgky4BlAAsWLOSEJRunOkTbqUXzuquTq73MYbvNdv46nc6sjaXpGR0d9XVvMfPXfuaw3cxfuw1bEeBxwFlVtQm4IclFwCOBXwOXVdUPAZKsBhZzxyLAdcBeSd4BnAdc0LPv3cDZ4wsAPef8RFX9phn748Djgd4iwJ3GTjIfeAzw0WZSAsBOPcd8sqpuA76VZNF0Lr6qTqNbWGDPvfauk9YMW/oHx/IlGzF/7WYO222287f+qJFZG0vT0+l0GBkZ6XcYmiHz137msN3MX7sN1e0AU9jQs72JcQWSqvol3RkEHeAY4Iye3V8DDk2y80xOPMnYOwC/qqr9eh4PmSTeIEmSJEnSFIatCHAJ8NzmHvyFwCHAZdM5sLm/f4eq+hhwPLB/z+73AJ8Fzk4y/quhS4BnJrl7kl2AZzVtmx27qn4NXJ/kL5s+SfLwLbxeSZIkSZL+YCjmojYfzDcAnwAOBq4CCvinqvq/YwvuTWEP4H1Jxgonr+ndWVVvTbIr8MEkR/W0fzPJSm4vNpwxbj2AzY19FHBKkuOBucCHm9g3d62rq2q/aVyPJEmSJGnIDEURgO6Cf9+vqgJe1Tz+oKo6dKfijz1/ac/2SE/X3m//77S/ql7Xs2txT/tbgbdOFlxVXTXJ2NcDT52g/ehxz+f3bE+rADBv7hzWrVg6na7aDnU6He8hbjlz2G7mT5IktdXA3w6Q5BjgLLrT7CVJkiRJGloDPxOgqk4FTu13HJIkSZIk9dvAzwSQJEmSJEldFgEkSZIkSRoSFgEkSZIkSRoSFgEkSZIkSRoSFgEkSZIkSRoSFgEkSZIkSRoSFgEkSZIkSRoSFgEkSZIkSRoSO/Y7APXHLbduYvFx5/U7DM3Q8iUbOdr8tZo5bLd+52/9iqV9O7ckSWo3ZwJIkiRJkjQkBqYIkGRTktVJ1ib5aJK7T9Lvs0l2m2Ks0S08dyfJgT3P90lyxpaMIUmSJEnStjYwRQDglqrar6r2BX4PHNO7M107VNXhVfWrbRlIVX2rql6yLc8hSZIkSdKWGqQiQK9LgL2TLE6yLskHgLXAfZOsT7IAIMlfJbmsmUHw7iRzegdJsiDJ15MsTTKS5DM9+96Z5OjxJ05yWHPMN5sZCfOb9hVJvpXk6iRvmeC4P2viWJ3kyiT3aNpfleTy5rjXN22Lk1yb5PQk1yS5IMm82Xv5JEmSJEmDaOAWBkyyI/A04PNN0wOBF1bVpc3+sX4PAZ4LPLaqbk3yLuAo4APN/kXAucDxVfWFJCPTOPcC4HjgSVX1mySvBv4xyX8CzwIeXFU1ye0IxwJ/X1VfbQoHv0tyWBP/QUCAc5McAvx30/78qvqbJGcDzwY+NEV8y4BlAAsWLOSEJRunuiRtpxbN6y5MpvYyh+3W7/x1Op2+nXtQjI6O+jq2mPlrP3PYbuav3QapCDAvyepm+xLgPcB9gB+MFQDGeSJwAHB5UxiYB/y02TcX+BLdD+UXbUEMjwb2Ab7ajHk34OvATcDvgPc0swk+M8GxXwXemuRM4ONV9cOmCHAYcGXTZz7dD///DVxfVWPXuwpYPFVwVXUacBrAnnvtXSetGaT0D5flSzZi/trNHLZbv/O3/qiRvp17UHQ6HUZGRvodhmbI/LWfOWw389dug/Qv0Fuqar/ehuaD+G8m6R/g/VX1mgn2baT7wfopwEU9bb23T+w8yZhfqKrn32lHchDdwsORwEuBJ/Tur6oVSc4DDqdbRHhKM96/VdW7x421GNjQ07SJbhFDkiRJkqRJDeqaANPxJeDIJH8MkGT3JPdr9hXwIuDBzZR+gB8A+yTZqZnO/8QJxrwUeGySvZsxd0nyp830/l2r6rPAPwAPH39gkgdU1ZqqehNwOfBg4HzgRT3rCuwxFq8kSZIkSVtqkGYCbJGq+laS44ELkuwA3Ar8Pd0P+1TVpiTPp3sf/s1V9a7m3vu1wPXcPkW/d8yfNYsFnpVkp6b5eOBm4FNJdqb77f4/ThDSK5McCtwGXAN8rqo2NGsXfL2Z1TAK/BXdb/4nlOSYJpZTt+wVkSRJkiQNuoEpAlTV/Ana1gP7jmtb3LP9EeAjk41VVRvo3hIw1v5PwD9N0H+kZ/vLwCMnCPGgKeJ/2STtbwfePsGufXv6vKVn2w//kiRJkqQJDUwRQFtm3tw5rFuxtN9haIY6nY4Lg7WcOWw38ydJktpqmNcEkCRJkiRpqFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSFgEkCRJkiRpSOzY7wDUH7fcuonFx53X7zA0Q8uXbORo89dq5rDd2pC/9SuW9jsESZK0HXImwBZK8uwkOyZ5TpI5TduuSZ6W5J5JDu93jJIkSZIkTWTgigBJnpmkkjx4K8cZnWTXd4EvATtV1SaAqroJeBTwYeDK5vgjkhy3NTFIkiRJkjSbBvF2gOcDX2l+vm62B6+qq4E/m6D9xHHPzwXOne3zS5IkSZI0UwM1EyDJfOBxwIuB5/W0jyTpJDknybeTnJmuJyT5ZE+/Jyf5xLgxFyT5epKlSe6d5OIkq5OsTfL4ps9Tk3wzyVVJvtS0HZ3knc32yiRH9ox5p1kGSXZJcl4zxtokz23aD0hyUZJVSc5Pcu+mvZPkTUkuS/KdsVgkSZIkSZrMoM0EeAbw+ar6TpJfJDmgqlY1+x4BPBT4MfBV4LHAhcC7kiysqp8Bfw28d2ywJIvofpt/fFV9Icly4PyqemOzHsDdkywETgcOqarrk+w+w9ifCvy4qpY25941yVzgHcAzqupnTWHgjcCLmmN2rKqDmnUIXgc8aXMnSLIMWAawYMFCTliycYahqt8WzesuTKb2Moft1ob8dTqdfoewXRsdHfU1ajHz137msN3MX7sNWhHg+cDbm+0PN8/HigCXVdUPAZKsBhZX1VeSfBD4qyTvAw4GXtD0n0v33v+/r6qLmrbLgfc2H84/WVWrk4wAF1fV9QBVdeMMY18DnJTkTcBnquqSJPsC+wJfSAIwB/hJzzEfb36uAhZPdYKqOg04DWDPvfauk9YMWvqHx/IlGzF/7WYO260N+Vt/1Ei/Q9iudTodRkZG+h2GZsj8tZ85bDfz127b979gtkDzDfwTgCVJiu4H5kryqqbLhp7um7j92t8HfBr4HfDRqhr7amcj3Q/XTwEuAqiqi5McAiwFViZ5K/DLaYS3kebWiyQ7AHcb36GZvbA/cDjwhua2gk8A11TVwZOMO3ZNvdcjSZIkSdKEBmlNgCOBD1bV/apqcVXdF7ge2Oy98lX1Y7q3CBxPtyDwh110p90/OMmrAZLcD7ihqk4HzgD2By4FDkly/6bPRLcDrAcOaLaPoDvL4A6S3Af4bVV9CHhzM/Y6YGGSg5s+c5M8dKoXQpIkSZKkiQzSt8fPB940ru1jTftHpjj2TGBhVV3b21hVm5I8Hzg3yc3Ab4BXJbkVGAVe0Nyrvwz4ePMt/0+BJ48b/3TgU0muAj7fjDPeEuDNSW4DbgX+rqp+3ywoeHKSXenm623ANZNdSFNMOKOqDp/imiVJkiRJQ2ZgigBVdegEbSf3PO30tL90XNfH0f2g3nvs/ObnBrq3BIx5/wTn+RzwuXFtK4GVzfYNwKMBkswDFk4wxvnA+RO0rwYOmaB9pGf75zRrAjQzGywASJIkSZLuZGCKADOVZBXdb+aX30Wn3JnuugXHVtVb7qJz3sm8uXNYt2Jpv06vrdTpdFz0q+XMYbuZP0mS1FZDXwSoqgOm7jWr5/sl8Mi78pySJEmSJMFgLQwoSZIkSZI2wyKAJEmSJElDwiKAJEmSJElDwiKAJEmSJElDwiKAJEmSJElDwiKAJEmSJElDwiKAJEmSJElDwiKAJEmSJElDwiKAJEmSJElDYsd+B6D+uOXWTSw+7rx+h6EZWr5kI0ebv1Yzh+026Plbv2Jpv0OQJEnbiDMBJEmSJEkaEgNfBEgy2rN9eJLvJLlfkhOTHDvFscckecE0z3NykgM3s7+zuf2SJEmSJG1rQ3M7QJInAicDT6mqHySZ8piqOnW641fVy7ciPEmSJEmStrmBnwkAkOQQ4HTg6VX1/Qn2/02Sy5NcleRjSe7etP9htkDzTf7bk6xOsjbJQU37Lknem+SyJFcmeUbTPi/Jh5Ncm+QTwLye8z0/yZpmnDc1bXOSrGza1iT5hwniXJnklCSXJrkuyUhz7muTrJz9V06SJEmSNEiGYSbATsAngZGq+vYkfT5eVacDJHkD8GLgHRP0u3tV7dcUFd4L7Au8FvhyVb0oyW7AZUm+CPwt8NuqekiShwHfbMa/D/Am4ADgl8AFSZ4J/A+wR1Xt2/TbbZJY7wUcDBwBnAs8FngJcHmS/apq9WQvRJJlwDKABQsWcsKSjZN11XZu0bzuwmRqL3PYboOev06n0+8QtrnR0dGhuM5BZf7azxy2m/lrt2EoAtwKfI3uB/tXTNJn3+bD/27AfOD8SfqdBVBVFye5Z/NB/TDgiJ71BXYG9gQOoXv7AVV1dZKrm/2PBDpV9TOAJGc2ff8V2CvJO4DzgAsmieHTVVVJ1gA3VNWaZpxrgMXApEWAqjoNOA1gz732rpPWDEP6B9PyJRsxf+1mDttt0PO3/qiRfoewzXU6HUZGRvodhmbI/LWfOWw389duw3A7wG3Ac4CDkvzvSfqsBF5aVUuA19P9ID+RmuB5gGdX1X7NY8+qunZLg6yqXwIPBzrAMcAZk3Td0Py8rWd77Png/otUkiRJkrTVhqEIQFX9FlgKHJXkxRN0uQfwkyRzgaM2M9RzAZI8Dripqm6iO2vgZWlWGkzyiKbvxcD/atr2BR7WtF8G/FmSBUnmAM8HLkqyANihqj4GHA/sP+MLliRJkiRpAkPzzXFV3ZjkqcDFSX42bvc/A98Aftb8vMckw/wuyZXAXOBFTdu/Am8Drk6yA3A98HTgFOB9Sa4FrgVWNXH8JMlxwIV0ZxGcV1WfSvLwpv9YYeY1M73WJGcAp1bVFTMdQ5IkSZI0eAa+CFBV83u2/we4f/P03J72U+h+aB9/7Injmj5UVa8c1+cWuosAjj/2FuB5k8R0Fs36Aj1tVzHFt/9VdXTP9nq6CxNOtO8lmxsHYN7cOaxbsXSqbtpOdTqdobhnd5CZw3Yzf5Ikqa2G4nYASZIkSZI0BDMBZktVjfQ7BkmSJEmStoYzASRJkiRJGhIWASRJkiRJGhIWASRJkiRJGhIWASRJkiRJGhIWASRJkiRJGhIWASRJkiRJGhIWASRJkiRJGhIWASRJkiRJGhI79jsA9cctt25i8XHn9TsMzdDyJRs52vy1mjlsN/PXfuaw3ZYv2chIv4OQpJZyJoAkSZIkSUPCmQCTSLIH8CZgNfDdqvpUn0OSJEmSJGmrOBNgElX1I+AM4FcWACRJkiRJg8AiwCSSvBb4T+DlSVYneVTTfkaSfWY45tFJ3tlsH5PkBbMXsSRJkiRJm+ftABNIcjDwdGD/qtqQZAFwN4CqeslsnKOqTp2NcSRJkiRJmq5UVb9j2O4k+Qvgr6vqzyfY1wGOraorkpwCPBKYB5xTVa9r+qwHDqyqnyc5EHhLVY0kObppf2mSE4HRqnrLuDEXAFdU1eJx5x0BXg/8ClgCnA2sAV7RnP+ZVfX9Ka5rGbAMYMGChQec8LbTt/i10fZh0Ty44ZZ+R6GtYQ7bzfy1nzlst0Xz4I9337XfYWgrjI6OMn/+/H6HoRkyf+1w6KGHrqqqA8e3OxNgYhcAJyT5DvBF4CNVddEE/V5bVTcmmQN8KcnDqurqbRjXw4GHADcC1wFnVNVBSV4BvAx45eYOrqrTgNMA9txr7zppjelvq+VLNmL+2s0ctpv5az9z2G7Ll2zkOSMj/Q5DW6HT6TBiDlvL/LWbawJMoKpGgQPofmv+M+Ajzbf44z0nyTeBK4GHAjNaK2ALXF5VP6mqDcD36RYroDsjYPE2PrckSZIkqeUsgU+iqjYBHaCTZA3wQmDl2P4k9weOBR5ZVb9MshLYudm9kdsLLGNtmzPd/ht6tm/reX4b5lKSJEmSNAVnAkwgyYOSPLCnaT/gB+O63RP4DXBTkkXA03r2rac7kwDg2dM4ZW//I7c0XkmSJEmSpsNvjyc2H3hHkt3ofkv/PZoF9cZU1VVJrgS+DfwP8NWe3a8H3pPkX+nOJpjKW4Czm4X7ztuawJMcQXfxwRM212/e3DmsW7F0a06lPup0Oqw/aqTfYWgrmMN2M3/tZw7brdPp9DsESWotiwATqKpVwGMm2TfSs330JH0uAf50gvaVNLcUVNWJPe3fBh4GkOQ+THBLQFV16CkojIvjD/uq6lzg3InikiRJkiQNN28H2P7cA3h8khf2OxBJkiRJ0mBxJsB2pqrWAY/qdxySJEmSpMHjTABJkiRJkoaERQBJkiRJkoaERQBJkiRJkoaERQBJkiRJkoaERQBJkiRJkoaERQBJkiRJkoaERQBJkiRJkobEjv0OQP1xy62bWHzcef0OQzO0fMlGjjZ/rWYO2838tZ85bLdtkb/1K5bO6niStL1yJsBdIMkeSR6fZH4S/w8jSZIkSeqLgSwCJNmUZHWStUk+muTud/H5z0lyn7HnVfUj4BXAKcAPmj4HJjn5roxLkiRJkjTcBrIIANxSVftV1b7A74Fj7sqTV9WRVfXjcc3/DHy+qtY2fa6oqpfflXFJkiRJkobboPwSnFYAABBRSURBVBYBel0C7A2Q5JNJViW5JsmysQ5JRpO8MclVSS5NsqhpX5jkY0kubx6PTbJDkvVJdus5/rtJFk3Uv9n/WeAs4FVJbkrywiQjST7T7N+9ie3q5vwPG38RSY5u+nyhOf9Lk/xjkiubY3bfpq+iJEmSJKn1UlX9jmHWJRmtqvlJdgQ+Rvcb+FOS7F5VNyaZB1wO/FlV/SJJAUdU1aeT/Dvw66p6Q5L/At5VVV9JsidwflU9JMnbgdVV9b4kjwLeWFVPmqx/T1wHAO8DHg88Aji2qp6e5B3Az6vq9UmeALy1qvYbd01HA8c3x+0MfA94dVWdmuQ/gB9U1dumeF2WAcsAFixYeMAJbzt9a15m9dGieXDDLf2OQlvDHLab+Ws/c9hu2yJ/S/bYdXYH1GaNjo4yf/78foehGTJ/7XDooYeuqqoDx7cP6l8HmJdkdbN9CfCeZvvlSZ7VbN8XeCDwC7q3DHymaV8FPLnZfhKwT5Kxce+ZZD7wEeAEuh/on9c8n7R/VY0mWQB8EHhOVd3U0wfgccCzAarqy0n+KMk9q+rX467rwqq6Gbg5yU3Ap5v2NcCdZg+MV1WnAacB7LnX3nXSmkFN/+BbvmQj5q/dzGG7mb/2M4ftti3yt/6okVkdT5vX6XQYGRnpdxiaIfPXboP6f79bJvgmfYTuh/SDq+q3STp0v1EHuLVunxKxidtflx2AR1fV78aN9XVg7yQLgWcCb5ii/xzgw8C/jK0JMEMberZv63l+G4ObS0mSJEnSLBmGNQHG7Ar8sikAPBh49DSOuQB42diTJPsBNAWDTwBvBa6tql9srj+wAri6qj48yXkuAY5qjhmhe2vA+FkAkiRJkiRtlWEqAnwe2DHJtXQ/lF86jWNeDhzYLNj3Le74VwY+AvwVt98KsLn+xwKHNX+2cHWSI8ad50TggCRXN7G9cAuv7Q+SHJPkLv1rCJIkSZKkdhjIKeRVdadVKqpqA/C0qfpX1TnAOc32z4HnTnLMFUDGtU3Yv6oyvq3RafbfSPe2gklV1UpgZc/zxRPtq6pTNzeOJEmSJGl4DWQRQFObN3cO61Ys7XcYmqFOp+MCRi1nDtvN/LWfOWw38ydJMzdMtwNIkiRJkjTULAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkLAJIkiRJkjQkUlX9jkF9sOdee9cOz3l7v8PQDC1fspGT1uzY7zC0Fcxhu5m/9jOH7Wb+2s8cztz6FUv7HQKdToeRkZF+h6EpJFlVVQeOb3cmgCRJkiRJQ2KoiwBJLkzylHFtr0xySpL7JDmnaRtJ8plpjPe1bRWrJEmSJElba6iLAMBZwPPGtT0POKuqflxVR27JYFX1mFmLTJIkSZKkWTbsRYBzgKVJ7gaQZDFwH+CSJIuTrB1/QJITk7w3SSfJdUle3rNvtPk5P8mXknwzyZokzxgbv3fMJMcmObHZfnmSbyW5OsmHJzjv0Uk+meQLSdYneWmSf0xyZZJLk+w+my+MJEmSJGnwDPVqHFV1Y5LLgKcBn6I7C+Dsqqokmzv0wcChwD2AdUlOqapbe/b/DnhWVf06yQLg0iTnThHOccD9q2pDkt0m6bMv8AhgZ+B7wKur6hFJ/gN4AfC2zZ0gyTJgGcCCBQs5YcnGKULS9mrRvO6COmovc9hu5q/9zGG7mb/2M4cz1+l0+h0Co6Oj20UcmpmhLgI0xm4JGCsCvHgax5xXVRuADUl+CiwCftizP8D/SXIIcBuwR9Nnc64GzkzySeCTk/S5sKpuBm5OchPw6aZ9DfCwqYKuqtOA06D71wFckbW9XFG3/cxhu5m/9jOH7Wb+2s8cztz6o0b6HYJ/HaDlhv12AOh++H9ikv2Bu1fVqmkcs6FnexN3LqYcBSwEDqiq/YAb6H57v5E7vuY792wvBf4T2B+4PMlEvxV7z3tbz/PbJohBkiRJkqQ7GPoiQFWNAhcC76U7K2A27Ar8tKpuTXIocL+m/Qbgj5P8UZKdgKcDJNkBuG9VXQi8ujl+/izFIkmSJEkS4LfHY84CPsGd/1LATJ0JfDrJGuAK4NsATVHgX4DLgB+NtQNzgA8l2ZXurQQnV9WvZnLiJMc05zp16y5BkiRJkjRoLAIAVfVJuh++e9vW012Ij6rqAJ1m+8Rx/fbt2Z7f/Pw5cPAk5zoZOHmCXY+bIsaVwMqe54sn2ueHf0mSJEnSZCwCDKl5c+ewbsXSfoehGep0OtvFojCaOXPYbuav/cxhu5m/9jOHUv8M/ZoAkiRJkiQNC4sAkiRJkiQNCYsAkiRJkiQNCYsAkiRJkiQNCYsAkiRJkiQNCYsAkiRJkiQNCYsAkiRJkiQNCYsAkiRJkiQNCYsAkiRJkiQNiVRVv2NQH+y51961w3Pe3u8wNEPLl2zkpDU79jsMbQVz2G7mr/3MYbuZv/Yzh+02zPlbv2Jpv0OYtiSrqurA8e3OBJAkSZIkaUhYBJAkSZIkaUhYBJiGJKM924cn+U6S+/UzJkmSJEmSttRw3sgxQ0meCJwMPKWqftDveCRJkiRJ2hLOBJimJIcApwNPr6rvN21/nuQbSa5M8sUki5r2E5Mc23Ps2iSLm8e1SU5Pck2SC5LMa/rsl+TSJFcn+USSe00Qw8okpzT9rksykuS9zZgr75IXQpIkSZLUWv51gGlIcitwMzBSVVf3tN8L+FVVVZKXAA+pquVJTgRGq+otTb+1wNObw74HHFhVq5OcDZxbVR9KcjXwsqq6KMm/APesqleOi2MlsDPwfOAI4IPAY4FrgMuBF1fV6s1cxzJgGcCCBQsPOOFtp2/dC6O+WTQPbril31Foa5jDdjN/7WcO2838tZ85bLdhzt+SPXbtdwjTduihh0741wG8HWB6bgW+BrwYeEVP+58AH0lyb+BuwPXTGOv6ng/qq4DFSXYFdquqi5r29wMfneT4TzdFhzXADVW1BiDJNcBiYNIiQFWdBpwG3T8ROKx/1mMQDPOfZRkU5rDdzF/7mcN2M3/tZw7bbZjzt/6okX6HsNW8HWB6bgOeAxyU5H/3tL8DeGdVLQH+lu639AAbueNru3PP9oae7U1seSFm7Pjbxo112wzGkiRJkiQNEYsA01RVvwWWAkcleXHTvCvwo2b7hT3d1wP7AyTZH7j/FGPfBPwyyeObpv8PuGgzh0iSJEmStMX85ngLVNWNSZ4KXJzkZ8CJwEeT/BL4Mrd/2P8Y8IJmiv43gO9MY/gXAqcmuTtwHfDXM40zyRnAqVV1xUzHkCRJkiQNHhcGHFIPetCDat26df0OQzPU6XQYGRnpdxjaCuaw3cxf+5nDdjN/7WcO2838tUOSCRcG9HYASZIkSZKGhEUASZIkSZKGhEUASZIkSZKGhEUASZIkSZKGhEUASZIkSZKGhH8dYEgluRnwzwO01wLg5/0OQlvFHLab+Ws/c9hu5q/9zGG7mb92uF9VLRzfuGM/ItF2Yd1Efy5C7ZDkCvPXbuaw3cxf+5nDdjN/7WcO2838tZu3A0iSJEmSNCQsAkiSJEmSNCQsAgyv0/odgLaK+Ws/c9hu5q/9zGG7mb/2M4ftZv5azIUBJUmSJEkaEs4EkCRJkiRpSFgEkCRJkiRpSFgEGDJJnppkXZLvJTmu3/HojpKsT7ImyeokVzRtuyf5QpLvNj/v1bQnyclNLq9Osn/POC9s+n83yQv7dT2DLsl7k/w0ydqetlnLV5IDmv8evtccm7v2CgffJDk8McmPmvfh6iSH9+x7TZOPdUme0tM+4e/WJPdP8o2m/SNJ7nbXXd3gS3LfJBcm+VaSa5K8omn3fdgCm8mf78GWSLJzksuSXNXk8PVN+4Sve5Kdmuffa/Yv7hlri3KrrbeZ/K1Mcn3Pe3C/pt3foYOiqnwMyQOYA3wf2Au4G3AVsE+/4/JxhxytBxaMa/t34Lhm+zjgTc324cDngACPBr7RtO8OXNf8vFezfa9+X9sgPoBDgP2BtdsiX8BlTd80xz6t39c8aI9JcngicOwEffdpfm/uBNy/+X06Z3O/W4Gzgec126cCf9fvax6kB3BvYP9m+x7Ad5o8+T5swWMz+fM92JJH876Y32zPBb7RvF8mfN2B/x84tdl+HvCRmebWxzbN30rgyAn6+zt0QB7OBBguBwHfq6rrqur3wIeBZ/Q5Jk3tGcD7m+33A8/saf9AdV0K7Jbk3sBTgC9U1Y1V9UvgC8BT7+qgh0FVXQzcOK55VvLV7LtnVV1a3f+LfqBnLM2SSXI4mWcAH66qDVV1PfA9ur9XJ/zd2nzb8QTgnOb43v8eNAuq6idV9c1m+2bgWmAPfB+2wmbyNxnfg9uZ5r002jyd2zyKyV/33vfmOcATmzxtUW638WUNjc3kbzL+Dh0QFgGGyx7A//Q8/yGb/5+t7noFXJBkVZJlTduiqvpJs/1/gUXN9mT5NM/9NVv52qPZHt+uu8ZLm6mO7x2bSs6W5/CPgF9V1cZx7doGmmnFj6D7TZbvw5YZlz/wPdgaSeYkWQ38lO6Hv+8z+ev+h1w1+2+imyf/TdMn4/NXVWPvwTc278H/SLJT0+bv0AFhEUDavjyuqvYHngb8fZJDenc2VVT/rmdLmK/WOgV4ALAf8BPgpP6Go6kkmQ98DHhlVf26d5/vw+3fBPnzPdgiVbWpqvYD/oTuN/cP7nNI2gLj85dkX+A1dPP4SLpT/F/dxxC1DVgEGC4/Au7b8/xPmjZtJ6rqR83PnwKfoPs/0xua6VQ0P3/adJ8sn+a5v2YrXz9qtse3axurqhuafxTdBpxO930IW57DX9CdKrnjuHbNoiRz6X6APLOqPt40+z5siYny53uwnarqV8CFwMFM/rr/IVfN/l3p5sl/0/RZT/6e2tyqU1W1AXgfM38P+jt0O2URYLhcDjywWbH1bnQXZDm3zzGpkWSXJPcY2wYOA9bSzdHYKqsvBD7VbJ8LvKBZqfXRwE3N9NfzgcOS3KuZQnlY06a7xqzkq9n36ySPbu6XfEHPWNqGxj48Np5F930I3Rw+r1nd+v7AA+kueDTh79bmG+gLgSOb43v/e9AsaN4b7wGuraq39uzyfdgCk+XP92B7JFmYZLdmex7wZLprO0z2uve+N48EvtzkaYtyu+2vbDhMkr9v9xRRQ/ce/t73oL9DB8FEqwX6GNwH3VU9v0P3fq3X9jseH3fIzV50V729CrhmLD9075X7EvBd4IvA7k17gP9scrkGOLBnrBfRXVTne8Bf9/vaBvUBnEV3quqtdO9ze/Fs5gs4kO7/eL8PvBNIv6950B6T5PCDTY6upvsPnnv39H9tk4919KxwPNnv1uZ9fVmT248CO/X7mgfpATyO7lT/q4HVzeNw34fteGwmf74HW/IAHgZc2eRqLXDC5l53YOfm+fea/XvNNLc+tmn+vty8B9cCH+L2vyDg79ABeaRJjiRJkiRJGnDeDiBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pCwCCBJkiRJ0pD4f6E2BZPNmMJnAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 1152x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df['seniunijos_pavad'].value_counts()[:10].plot.barh(figsize=(16, 4), grid=True);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Hm įdomu, Kaune yra daugiau pastatų, nei vilniuje. O jei imčiau tik gyvenamuosius pastatus?"
]
},
{
"cell_type": "code",
"execution_count": 169,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1152x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df[df['obje_tipas'] == 20]['seniunijos_pavad'].value_counts()[:10].plot.barh(figsize=(16, 4), grid=True);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Arba aš kažką ne taip darau, arba Panevėžyje yra daugiausiai gyenamūjų pastatų. Nors klausimas kas yra „Vilniaus m.“, ar tai tikrai seniūnija? Nes yra „Naujosios Vilnios sen.“, kas yra Vilniaus miesto mikro rajonas. Ir kuo skiriasi „Anykščių m.“, nuo „Anykščių sen.“? Abu yra užvadinti kaip `seniunijos_pavad`.\n",
"\n",
"Bandau žiūrėti pagal gyvenamąjį plotą:"
]
},
{
"cell_type": "code",
"execution_count": 174,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1152x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df.groupby('seniunijos_pavad')['gyv_plotas'].count().sort_values(ascending=False).head(10).plot.barh(figsize=(16, 4), grid=True);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Vėl Kaunas pirmauja.\n",
"\n",
"Deja nėra koordinačių, kurių pagalba būtų galima iš duomenų gauti žymiai daugiau naudos, būtų galima daryti vizualizacija žemėlapyje, nes vis dėl to nekilnojamas tirtas yra labai susijęs su vieta žemėlapyje.\n",
"\n",
"Teoriškai, būtų galima daryti vizualizaciją žemėlapyje pagal savivaldybes, bet tada reikia iš kažkur gauti seniūnijų erdvinius duomenis, kurie kartu su NTR nepateikiami. O kadangi NTR neturi seniūnijų identifikatorių, tai net jei ir būtų kažkur erdviniai seniūnijų duomenys, juos tikriausiai būtų sunku sujungti.\n",
"\n",
"Bandau paskutinį klausimą, kiek Lietuvoje yra gyvenamųjų pastatų, be vandatiekio?\n",
"\n",
"Pirmiausiai žiūrim į lauką vandantiekis:"
]
},
{
"cell_type": "code",
"execution_count": 180,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.0 1148528\n",
"1.0 251873\n",
"2.0 214891\n",
"3.0 379\n",
"4.0 1\n",
"Name: vandentiekis, dtype: int64"
]
},
"execution_count": 180,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['vandentiekis'].value_counts()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Vandentiokio laukas konvertuotas į foat tipą, nes greičiausiai ne visi pastatai turi toki1 reikšmą, žiūrim:"
]
},
{
"cell_type": "code",
"execution_count": 190,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"62.63%\n"
]
}
],
"source": [
"print('%.2f%%' % ((~df[['vandentiekis']].isnull()).sum() / df.shape[0] * 100))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Tik 67% procentai pastatų turi duomenis apie vandentiekį, įdomu ką gaučiau, jei skaičiuočiau tik gyvenamuosius pastatus."
]
},
{
"cell_type": "code",
"execution_count": 199,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"82.82%\n"
]
}
],
"source": [
"gyvenamieji_kodas, = tipai[tipai['obje_pav'] == 'Gyvenamas pastatas'].index\n",
"gyvenamieji = df[df['obje_tipas'] == gyvenamieji_kodas]\n",
"print('%.2f%%' % ((~gyvenamieji[['vandentiekis']].isnull()).sum() / gyvenamieji.shape[0] * 100))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Šiek tiek geriau, bet vis dar mažokai informacijos. Įdomu, kodėl beveik 20% pastatų neturi duomenų apie vandentikė. Na, bet kiek duomenų yra, tiek užteks.\n",
"\n",
"Skaičiuojam toliau. Kaip sužinoti, ką reiškia vandentiekio kodai 0, 1, 2, 3, 4? Turiu įtarimą, kad tai galima išsiaiškinti per atributų klasifikatorius, bandau..."
]
},
{
"cell_type": "code",
"execution_count": 209,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 254 entries, 0 to 253\n",
"Data columns (total 12 columns):\n",
"atri_kodas 254 non-null int64\n",
"atrt_tipas 254 non-null int64\n",
"atri_pav 254 non-null object\n",
"atri_pav_i 254 non-null object\n",
"atri_eilnr 254 non-null int64\n",
"vien_kodas 93 non-null float64\n",
"atri_koef 2 non-null object\n",
"atri_poz 254 non-null int64\n",
"atri_formatas 84 non-null object\n",
"atri_koregavimo_data 254 non-null object\n",
"atri_pav_en 254 non-null object\n",
"atri_pav_i_en 254 non-null object\n",
"dtypes: float64(1), int64(4), object(7)\n",
"memory usage: 23.9+ KB\n"
]
}
],
"source": [
"atributai = pd.read_csv('https://www.registrucentras.lt/aduomenys/?byla=klas_NTR_atributai.csv', encoding='UTF-16')\n",
"atributai.info()"
]
},
{
"cell_type": "code",
"execution_count": 206,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>atri_kodas</th>\n",
" <th>atrt_tipas</th>\n",
" <th>atri_pav</th>\n",
" <th>atri_pav_i</th>\n",
" <th>atri_eilnr</th>\n",
" <th>vien_kodas</th>\n",
" <th>atri_koef</th>\n",
" <th>atri_poz</th>\n",
" <th>atri_formatas</th>\n",
" <th>atri_koregavimo_data</th>\n",
" <th>atri_pav_en</th>\n",
" <th>atri_pav_i_en</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>8</td>\n",
" <td>1</td>\n",
" <td>Vandentiekis:</td>\n",
" <td>Vandentiekis:</td>\n",
" <td>1060</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>2006-07-04 08:33:55.0</td>\n",
" <td>Water supply:</td>\n",
" <td>Water supply:</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" atri_kodas atrt_tipas atri_pav atri_pav_i atri_eilnr \\\n",
"7 8 1 Vandentiekis: Vandentiekis: 1060 \n",
"\n",
" vien_kodas atri_koef atri_poz atri_formatas atri_koregavimo_data \\\n",
"7 NaN NaN 1 NaN 2006-07-04 08:33:55.0 \n",
"\n",
" atri_pav_en atri_pav_i_en \n",
"7 Water supply: Water supply:"
]
},
"execution_count": 206,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"atributai[atributai['atri_pav'].str.contains('vandentiekis', case=False)]"
]
},
{
"cell_type": "code",
"execution_count": 210,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 824 entries, 0 to 823\n",
"Data columns (total 8 columns):\n",
"atri_kodas 824 non-null int64\n",
"reik_reiksme 824 non-null int64\n",
"reik_pav 824 non-null object\n",
"reik_pav_i 824 non-null object\n",
"reik_koregavimo_data 824 non-null object\n",
"reik_naudojama 824 non-null int64\n",
"reik_pav_en 824 non-null object\n",
"reik_pav_i_en 824 non-null object\n",
"dtypes: int64(3), object(5)\n",
"memory usage: 51.6+ KB\n"
]
}
],
"source": [
"atributu_reiksmes = pd.read_csv('https://www.registrucentras.lt/aduomenys/?byla=klas_NTR_atributu_reiksmes.csv', encoding='UTF-16')\n",
"atributu_reiksmes.info()"
]
},
{
"cell_type": "code",
"execution_count": 211,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>atri_kodas</th>\n",
" <th>reik_reiksme</th>\n",
" <th>reik_pav</th>\n",
" <th>reik_pav_i</th>\n",
" <th>reik_koregavimo_data</th>\n",
" <th>reik_naudojama</th>\n",
" <th>reik_pav_en</th>\n",
" <th>reik_pav_i_en</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>172</th>\n",
" <td>8</td>\n",
" <td>2</td>\n",
" <td>Vietinis vandentiekis</td>\n",
" <td>Vietinis vandentiekis</td>\n",
" <td>2014-10-21 14:25:28.0</td>\n",
" <td>1</td>\n",
" <td>Local water supply</td>\n",
" <td>Local water supply</td>\n",
" </tr>\n",
" <tr>\n",
" <th>173</th>\n",
" <td>8</td>\n",
" <td>0</td>\n",
" <td>Nėra</td>\n",
" <td>Nėra</td>\n",
" <td>2014-10-21 14:25:28.0</td>\n",
" <td>1</td>\n",
" <td>No</td>\n",
" <td>No</td>\n",
" </tr>\n",
" <tr>\n",
" <th>174</th>\n",
" <td>8</td>\n",
" <td>1</td>\n",
" <td>Komunalinis vandentiekis</td>\n",
" <td>Komunalinis vandentiekis</td>\n",
" <td>2014-10-21 14:25:28.0</td>\n",
" <td>1</td>\n",
" <td>Water supply by public utility</td>\n",
" <td>Water supply by public utility</td>\n",
" </tr>\n",
" <tr>\n",
" <th>175</th>\n",
" <td>8</td>\n",
" <td>3</td>\n",
" <td>!!!Miesto ir vietinio kombinac</td>\n",
" <td>Miesto ir vietinio vandentiekio kombinacija</td>\n",
" <td>2014-10-21 14:25:28.0</td>\n",
" <td>0</td>\n",
" <td>Distr.&amp;local watersupply comb.</td>\n",
" <td>Combination of district and local water supply</td>\n",
" </tr>\n",
" <tr>\n",
" <th>176</th>\n",
" <td>8</td>\n",
" <td>4</td>\n",
" <td>!!!Komunalinis vandentiekis</td>\n",
" <td>Komunalinis vandentiekis</td>\n",
" <td>2014-10-21 14:25:28.0</td>\n",
" <td>0</td>\n",
" <td>Water supply by public utility</td>\n",
" <td>Water supply by public utility</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" atri_kodas reik_reiksme reik_pav \\\n",
"172 8 2 Vietinis vandentiekis \n",
"173 8 0 Nėra \n",
"174 8 1 Komunalinis vandentiekis \n",
"175 8 3 !!!Miesto ir vietinio kombinac \n",
"176 8 4 !!!Komunalinis vandentiekis \n",
"\n",
" reik_pav_i reik_koregavimo_data \\\n",
"172 Vietinis vandentiekis 2014-10-21 14:25:28.0 \n",
"173 Nėra 2014-10-21 14:25:28.0 \n",
"174 Komunalinis vandentiekis 2014-10-21 14:25:28.0 \n",
"175 Miesto ir vietinio vandentiekio kombinacija 2014-10-21 14:25:28.0 \n",
"176 Komunalinis vandentiekis 2014-10-21 14:25:28.0 \n",
"\n",
" reik_naudojama reik_pav_en \\\n",
"172 1 Local water supply \n",
"173 1 No \n",
"174 1 Water supply by public utility \n",
"175 0 Distr.&local watersupply comb. \n",
"176 0 Water supply by public utility \n",
"\n",
" reik_pav_i_en \n",
"172 Local water supply \n",
"173 No \n",
"174 Water supply by public utility \n",
"175 Combination of district and local water supply \n",
"176 Water supply by public utility"
]
},
"execution_count": 211,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"atributu_reiksmes[atributu_reiksmes['atri_kodas'] == 8]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Aha, paanšu, kad man reikalingas laukas yra `reik_reiksme`, bandau apjungi ir žiūrim kas gausis:"
]
},
{
"cell_type": "code",
"execution_count": 217,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>vandentiekis</th>\n",
" <th>reik_pav</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1148528</td>\n",
" <td>Nėra</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>251873</td>\n",
" <td>Komunalinis vandentiekis</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>214891</td>\n",
" <td>Vietinis vandentiekis</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>379</td>\n",
" <td>!!!Miesto ir vietinio kombinac</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1</td>\n",
" <td>!!!Komunalinis vandentiekis</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" vandentiekis reik_pav\n",
"0 1148528 Nėra\n",
"1 251873 Komunalinis vandentiekis\n",
"2 214891 Vietinis vandentiekis\n",
"3 379 !!!Miesto ir vietinio kombinac\n",
"4 1 !!!Komunalinis vandentiekis"
]
},
"execution_count": 217,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pd.concat(\n",
" [\n",
" df['vandentiekis'].dropna().astype(int).value_counts().rename('vandentiekis'),\n",
" atributu_reiksmes[atributu_reiksmes['atri_kodas'] == 8].set_index('reik_reiksme'),\n",
" ],\n",
" axis=1, join='inner',\n",
")[['vandentiekis', 'reik_pav']]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Didžioji dalis pastatų neturi vandentiekio, dabar daro tą patį tik su gyvenamaisiais pastatais:"
]
},
{
"cell_type": "code",
"execution_count": 219,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>vandentiekis</th>\n",
" <th>reik_pav</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>177902</td>\n",
" <td>Komunalinis vandentiekis</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>150894</td>\n",
" <td>Vietinis vandentiekis</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>135601</td>\n",
" <td>Nėra</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>322</td>\n",
" <td>!!!Miesto ir vietinio kombinac</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" vandentiekis reik_pav\n",
"1 177902 Komunalinis vandentiekis\n",
"2 150894 Vietinis vandentiekis\n",
"0 135601 Nėra\n",
"3 322 !!!Miesto ir vietinio kombinac"
]
},
"execution_count": 219,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"frame = pd.concat(\n",
" [\n",
" gyvenamieji['vandentiekis'].dropna().astype(int).value_counts().rename('vandentiekis'),\n",
" atributu_reiksmes[atributu_reiksmes['atri_kodas'] == 8].set_index('reik_reiksme'),\n",
" ],\n",
" axis=1, join='inner',\n",
")[['vandentiekis', 'reik_pav']]\n",
"frame"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Verčiam į procentus:"
]
},
{
"cell_type": "code",
"execution_count": 222,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>reik_pav</th>\n",
" <th>vandentiekis</th>\n",
" <th>proc</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Komunalinis vandentiekis</td>\n",
" <td>177902</td>\n",
" <td>31.705935</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Vietinis vandentiekis</td>\n",
" <td>150894</td>\n",
" <td>26.892533</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Nėra</td>\n",
" <td>135601</td>\n",
" <td>24.166993</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>!!!Miesto ir vietinio kombinac</td>\n",
" <td>322</td>\n",
" <td>0.057387</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" reik_pav vandentiekis proc\n",
"1 Komunalinis vandentiekis 177902 31.705935\n",
"2 Vietinis vandentiekis 150894 26.892533\n",
"0 Nėra 135601 24.166993\n",
"3 !!!Miesto ir vietinio kombinac 322 0.057387"
]
},
"execution_count": 222,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"frame['proc'] = frame['vandentiekis'] / gyvenamieji.shape[0] * 100\n",
"frame[['reik_pav', 'vandentiekis', 'proc']]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Kagi, išvada aiški. Iš visų gyvenamųjų pastatų, kurių Lietuvoje viso yra tik:"
]
},
{
"cell_type": "code",
"execution_count": 224,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"561,100\n"
]
}
],
"source": [
"print(f'{gyvenamieji.shape[0]:,}')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Net 24% neturi vandentiekio. Tikriausiai toks procentas nelabai atspindi realybės, nes vienas kaimo namelis yra sulyginamas su daugiaukščiu pastatu, kuriame gyvana labai daug žmonių. Todėl būtų tiksliau skaičius normalizuoti pagal registruotų gyventojų skaičių pastate.\n",
"\n",
"O Registrų Centras daro labai gerą pažangą!"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment