Skip to content

Instantly share code, notes, and snippets.

@P3nny
Created February 17, 2016 21:42
Show Gist options
  • Save P3nny/f61b665c9293075d0882 to your computer and use it in GitHub Desktop.
Save P3nny/f61b665c9293075d0882 to your computer and use it in GitHub Desktop.
Playing around with geopy using "Geburtsorte" - Data from Moers - [https://www.offenesdatenportal.de/dataset/geburtsorte-der-moerser-bevoelkerung]
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import geopy"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import re"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Geburtsort</th>\n",
" <th>Anzahl</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Moers</td>\n",
" <td>29282</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Duisburg</td>\n",
" <td>12312</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Kamp-Lintfort</td>\n",
" <td>1616</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Krefeld</td>\n",
" <td>1568</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Rheinhausen jetzt Duisburg</td>\n",
" <td>1565</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Geburtsort Anzahl\n",
"1 Moers 29282\n",
"2 Duisburg 12312\n",
"3 Kamp-Lintfort 1616\n",
"4 Krefeld 1568\n",
"5 Rheinhausen jetzt Duisburg 1565"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"f = 'geburtsorte.csv'\n",
"df = pd.read_csv(f, sep=',', encoding='iso-8859-1')\n",
"# Gesamtzahl löschen \n",
"df = df.iloc[1:,:]\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# Unbekannt und Ungeklärt löschen \n",
"df = df.drop(df.index[[11]])"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df = df.drop(df.index[[627]])"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Geburtsort</th>\n",
" <th>Anzahl</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Moers</td>\n",
" <td>29282</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Duisburg</td>\n",
" <td>12312</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Kamp-Lintfort</td>\n",
" <td>1616</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Krefeld</td>\n",
" <td>1568</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Rheinhausen jetzt Duisburg</td>\n",
" <td>1565</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>Rheinkamp jetzt Moers</td>\n",
" <td>1506</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Homberg jetzt Duisburg</td>\n",
" <td>1345</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Essen</td>\n",
" <td>1331</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Moers Krs Wesel</td>\n",
" <td>1194</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Oberhausen</td>\n",
" <td>1086</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Düsseldorf</td>\n",
" <td>852</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>Rheinberg</td>\n",
" <td>813</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Neukirchen-Vluyn</td>\n",
" <td>766</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Homberg (Niederrhein) jetzt Duisburg</td>\n",
" <td>748</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Repelen-Baerl jetzt Moers</td>\n",
" <td>729</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Orsoy jetzt Rheinberg</td>\n",
" <td>594</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Mülheim an der Ruhr</td>\n",
" <td>587</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Gelsenkirchen</td>\n",
" <td>585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Dinslaken</td>\n",
" <td>481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Rheinkamp Jetzt Moers</td>\n",
" <td>424</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Beuthen</td>\n",
" <td>390</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Rheinhausen Jetzt Duisburg</td>\n",
" <td>383</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Köln</td>\n",
" <td>366</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>Bochum</td>\n",
" <td>356</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>Hindenburg</td>\n",
" <td>340</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>Berlin</td>\n",
" <td>327</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>Dortmund</td>\n",
" <td>303</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>Wesel</td>\n",
" <td>300</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>Sevelen jetzt Issum</td>\n",
" <td>298</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>Homberg J Duisburg</td>\n",
" <td>295</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>604</th>\n",
" <td>Kempen jetzt Krefeld</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>605</th>\n",
" <td>Kenitra</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>606</th>\n",
" <td>Kirchhellen jetzt Bottrop</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>607</th>\n",
" <td>Krakau</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>608</th>\n",
" <td>Krefeld-Uerdingen jetzt Krefeld</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>609</th>\n",
" <td>Kurucasile</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>610</th>\n",
" <td>Kustanaj</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>611</th>\n",
" <td>Leskovac</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>612</th>\n",
" <td>Lintfort Jetzt Kamp-Lintfort</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>613</th>\n",
" <td>Manfredonia</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>614</th>\n",
" <td>Mediasch</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>615</th>\n",
" <td>Nauen</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>616</th>\n",
" <td>Odessa</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>617</th>\n",
" <td>Of</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>618</th>\n",
" <td>Papenburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>619</th>\n",
" <td>Rastenburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>620</th>\n",
" <td>Repelen-Baerl j. Moers Krs. Wesel</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>621</th>\n",
" <td>Rhede</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>622</th>\n",
" <td>Rumeln-Kaldenhausen Jetzt Duisburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>623</th>\n",
" <td>Sangerhausen</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>624</th>\n",
" <td>Sonsbeck</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>625</th>\n",
" <td>Starogard Gdanski</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>626</th>\n",
" <td>Tichau</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>627</th>\n",
" <td>Tomsk</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>628</th>\n",
" <td>Ungeklärt</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>630</th>\n",
" <td>Waren</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>631</th>\n",
" <td>Wolfsberg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>632</th>\n",
" <td>Wolfsburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>633</th>\n",
" <td>Zeitz</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>634</th>\n",
" <td>Zittau</td>\n",
" <td>10</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>632 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" Geburtsort Anzahl\n",
"1 Moers 29282\n",
"2 Duisburg 12312\n",
"3 Kamp-Lintfort 1616\n",
"4 Krefeld 1568\n",
"5 Rheinhausen jetzt Duisburg 1565\n",
"6 Rheinkamp jetzt Moers 1506\n",
"7 Homberg jetzt Duisburg 1345\n",
"8 Essen 1331\n",
"9 Moers Krs Wesel 1194\n",
"10 Oberhausen 1086\n",
"11 Düsseldorf 852\n",
"13 Rheinberg 813\n",
"14 Neukirchen-Vluyn 766\n",
"15 Homberg (Niederrhein) jetzt Duisburg 748\n",
"16 Repelen-Baerl jetzt Moers 729\n",
"17 Orsoy jetzt Rheinberg 594\n",
"18 Mülheim an der Ruhr 587\n",
"19 Gelsenkirchen 585\n",
"20 Dinslaken 481\n",
"21 Rheinkamp Jetzt Moers 424\n",
"22 Beuthen 390\n",
"23 Rheinhausen Jetzt Duisburg 383\n",
"24 Köln 366\n",
"25 Bochum 356\n",
"26 Hindenburg 340\n",
"27 Berlin 327\n",
"28 Dortmund 303\n",
"29 Wesel 300\n",
"30 Sevelen jetzt Issum 298\n",
"31 Homberg J Duisburg 295\n",
".. ... ...\n",
"604 Kempen jetzt Krefeld 10\n",
"605 Kenitra 10\n",
"606 Kirchhellen jetzt Bottrop 10\n",
"607 Krakau 10\n",
"608 Krefeld-Uerdingen jetzt Krefeld 10\n",
"609 Kurucasile 10\n",
"610 Kustanaj 10\n",
"611 Leskovac 10\n",
"612 Lintfort Jetzt Kamp-Lintfort 10\n",
"613 Manfredonia 10\n",
"614 Mediasch 10\n",
"615 Nauen 10\n",
"616 Odessa 10\n",
"617 Of 10\n",
"618 Papenburg 10\n",
"619 Rastenburg 10\n",
"620 Repelen-Baerl j. Moers Krs. Wesel 10\n",
"621 Rhede 10\n",
"622 Rumeln-Kaldenhausen Jetzt Duisburg 10\n",
"623 Sangerhausen 10\n",
"624 Sonsbeck 10\n",
"625 Starogard Gdanski 10\n",
"626 Tichau 10\n",
"627 Tomsk 10\n",
"628 Ungeklärt 10\n",
"630 Waren 10\n",
"631 Wolfsberg 10\n",
"632 Wolfsburg 10\n",
"633 Zeitz 10\n",
"634 Zittau 10\n",
"\n",
"[632 rows x 2 columns]"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Krefeld, Regierungsbezirk Düsseldorf, Nordrhein-Westfalen, 47798, Deutschland\n"
]
}
],
"source": [
"from geopy.geocoders import Nominatim\n",
"geolocator = Nominatim()\n",
"location = geolocator.geocode(\"Krefeld\")\n",
"print(location.address)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(51.3331205, 6.5623343)\n"
]
}
],
"source": [
"print((location.latitude, location.longitude))"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'place_id': '570210', 'lon': '6.5623343', 'boundingbox': ['51.1731205', '51.4931205', '6.4023343', '6.7223343'], 'importance': 0.69787872287477, 'osm_type': 'node', 'display_name': 'Krefeld, Regierungsbezirk Düsseldorf, Nordrhein-Westfalen, 47798, Deutschland', 'icon': 'http://nominatim.openstreetmap.org/images/mapicons/poi_place_city.p.20.png', 'licence': 'Data © OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright', 'type': 'city', 'lat': '51.3331205', 'class': 'place', 'osm_id': '240048753'}\n"
]
}
],
"source": [
">>> print(location.raw)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def geo(): \n",
" for row in df['Geburtsort']:\n",
" geolocator = Nominatim()\n",
" location = geolocator.geocode(row)\n",
" print(location.address)\n",
" \n",
" "
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Moers, Kreis Wesel, Regierungsbezirk Düsseldorf, Nordrhein-Westfalen, Deutschland\n",
"Duisburg, Regierungsbezirk Düsseldorf, Nordrhein-Westfalen, Deutschland\n",
"Kamp-Lintfort, Kreis Wesel, Regierungsbezirk Düsseldorf, Nordrhein-Westfalen, Deutschland\n",
"Krefeld, Regierungsbezirk Düsseldorf, Nordrhein-Westfalen, 47798, Deutschland\n"
]
},
{
"ename": "AttributeError",
"evalue": "'NoneType' object has no attribute 'address'",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)",
"\u001b[1;32m<ipython-input-11-5749e89174e4>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mtest\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mgeo\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[1;32m<ipython-input-10-1115b1f17459>\u001b[0m in \u001b[0;36mgeo\u001b[1;34m()\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[0mgeolocator\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mNominatim\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[0mlocation\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mgeolocator\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mgeocode\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mrow\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 5\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlocation\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0maddress\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 6\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;31mAttributeError\u001b[0m: 'NoneType' object has no attribute 'address'"
]
}
],
"source": [
"test = geo()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Problem scheint zu sein, dass 'Reihnhausen jetzt Dusiburg' nicht als Orte erkannt werden\n",
"# Deshalb müsste man per Regex Strings die mehrere Worte enthalten durch deren jeweils letztes Wort ersetzen \n",
"# Ist mir bislang nicht gelungen"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"1 NaN\n",
"2 NaN\n",
"3 NaN\n",
"4 NaN\n",
"5 Duisburg\n",
"6 Moers\n",
"7 Duisburg\n",
"8 NaN\n",
"9 Wesel\n",
"10 NaN\n",
"11 NaN\n",
"13 NaN\n",
"14 NaN\n",
"15 Duisburg\n",
"16 Moers\n",
"17 Rheinberg\n",
"18 Ruhr\n",
"19 NaN\n",
"20 NaN\n",
"21 Moers\n",
"22 NaN\n",
"23 Duisburg\n",
"24 NaN\n",
"25 NaN\n",
"26 NaN\n",
"27 NaN\n",
"28 NaN\n",
"29 NaN\n",
"30 Issum\n",
"31 Duisburg\n",
" ... \n",
"604 Krefeld\n",
"605 NaN\n",
"606 Bottrop\n",
"607 NaN\n",
"608 Krefeld\n",
"609 NaN\n",
"610 NaN\n",
"611 NaN\n",
"612 NaN\n",
"613 NaN\n",
"614 NaN\n",
"615 NaN\n",
"616 NaN\n",
"617 NaN\n",
"618 NaN\n",
"619 NaN\n",
"620 Wesel\n",
"621 NaN\n",
"622 Duisburg\n",
"623 NaN\n",
"624 NaN\n",
"625 Gdanski\n",
"626 NaN\n",
"627 NaN\n",
"628 NaN\n",
"630 NaN\n",
"631 NaN\n",
"632 NaN\n",
"633 NaN\n",
"634 NaN\n",
"Name: Geburtsort, dtype: object"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['Geburtsort'].str.extract('\\s(\\w+)$')"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df['Geburtsort'].replace(to_replace=('^\\s(\\w+)$'), value='!', inplace=True, regex=True)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Geburtsort</th>\n",
" <th>Anzahl</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Moers</td>\n",
" <td>29282</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Duisburg</td>\n",
" <td>12312</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Kamp-Lintfort</td>\n",
" <td>1616</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Krefeld</td>\n",
" <td>1568</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Rheinhausen jetzt Duisburg</td>\n",
" <td>1565</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>Rheinkamp jetzt Moers</td>\n",
" <td>1506</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Homberg jetzt Duisburg</td>\n",
" <td>1345</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Essen</td>\n",
" <td>1331</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Moers Krs Wesel</td>\n",
" <td>1194</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Oberhausen</td>\n",
" <td>1086</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Düsseldorf</td>\n",
" <td>852</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>Rheinberg</td>\n",
" <td>813</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Neukirchen-Vluyn</td>\n",
" <td>766</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Homberg (Niederrhein) jetzt Duisburg</td>\n",
" <td>748</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Repelen-Baerl jetzt Moers</td>\n",
" <td>729</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Orsoy jetzt Rheinberg</td>\n",
" <td>594</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Mülheim an der Ruhr</td>\n",
" <td>587</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Gelsenkirchen</td>\n",
" <td>585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Dinslaken</td>\n",
" <td>481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Rheinkamp Jetzt Moers</td>\n",
" <td>424</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Beuthen</td>\n",
" <td>390</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Rheinhausen Jetzt Duisburg</td>\n",
" <td>383</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Köln</td>\n",
" <td>366</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>Bochum</td>\n",
" <td>356</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>Hindenburg</td>\n",
" <td>340</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>Berlin</td>\n",
" <td>327</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>Dortmund</td>\n",
" <td>303</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>Wesel</td>\n",
" <td>300</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>Sevelen jetzt Issum</td>\n",
" <td>298</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>Homberg J Duisburg</td>\n",
" <td>295</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>604</th>\n",
" <td>Kempen jetzt Krefeld</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>605</th>\n",
" <td>Kenitra</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>606</th>\n",
" <td>Kirchhellen jetzt Bottrop</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>607</th>\n",
" <td>Krakau</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>608</th>\n",
" <td>Krefeld-Uerdingen jetzt Krefeld</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>609</th>\n",
" <td>Kurucasile</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>610</th>\n",
" <td>Kustanaj</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>611</th>\n",
" <td>Leskovac</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>612</th>\n",
" <td>Lintfort Jetzt Kamp-Lintfort</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>613</th>\n",
" <td>Manfredonia</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>614</th>\n",
" <td>Mediasch</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>615</th>\n",
" <td>Nauen</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>616</th>\n",
" <td>Odessa</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>617</th>\n",
" <td>Of</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>618</th>\n",
" <td>Papenburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>619</th>\n",
" <td>Rastenburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>620</th>\n",
" <td>Repelen-Baerl j. Moers Krs. Wesel</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>621</th>\n",
" <td>Rhede</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>622</th>\n",
" <td>Rumeln-Kaldenhausen Jetzt Duisburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>623</th>\n",
" <td>Sangerhausen</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>624</th>\n",
" <td>Sonsbeck</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>625</th>\n",
" <td>Starogard Gdanski</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>626</th>\n",
" <td>Tichau</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>627</th>\n",
" <td>Tomsk</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>628</th>\n",
" <td>Ungeklärt</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>630</th>\n",
" <td>Waren</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>631</th>\n",
" <td>Wolfsberg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>632</th>\n",
" <td>Wolfsburg</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>633</th>\n",
" <td>Zeitz</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>634</th>\n",
" <td>Zittau</td>\n",
" <td>10</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>632 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" Geburtsort Anzahl\n",
"1 Moers 29282\n",
"2 Duisburg 12312\n",
"3 Kamp-Lintfort 1616\n",
"4 Krefeld 1568\n",
"5 Rheinhausen jetzt Duisburg 1565\n",
"6 Rheinkamp jetzt Moers 1506\n",
"7 Homberg jetzt Duisburg 1345\n",
"8 Essen 1331\n",
"9 Moers Krs Wesel 1194\n",
"10 Oberhausen 1086\n",
"11 Düsseldorf 852\n",
"13 Rheinberg 813\n",
"14 Neukirchen-Vluyn 766\n",
"15 Homberg (Niederrhein) jetzt Duisburg 748\n",
"16 Repelen-Baerl jetzt Moers 729\n",
"17 Orsoy jetzt Rheinberg 594\n",
"18 Mülheim an der Ruhr 587\n",
"19 Gelsenkirchen 585\n",
"20 Dinslaken 481\n",
"21 Rheinkamp Jetzt Moers 424\n",
"22 Beuthen 390\n",
"23 Rheinhausen Jetzt Duisburg 383\n",
"24 Köln 366\n",
"25 Bochum 356\n",
"26 Hindenburg 340\n",
"27 Berlin 327\n",
"28 Dortmund 303\n",
"29 Wesel 300\n",
"30 Sevelen jetzt Issum 298\n",
"31 Homberg J Duisburg 295\n",
".. ... ...\n",
"604 Kempen jetzt Krefeld 10\n",
"605 Kenitra 10\n",
"606 Kirchhellen jetzt Bottrop 10\n",
"607 Krakau 10\n",
"608 Krefeld-Uerdingen jetzt Krefeld 10\n",
"609 Kurucasile 10\n",
"610 Kustanaj 10\n",
"611 Leskovac 10\n",
"612 Lintfort Jetzt Kamp-Lintfort 10\n",
"613 Manfredonia 10\n",
"614 Mediasch 10\n",
"615 Nauen 10\n",
"616 Odessa 10\n",
"617 Of 10\n",
"618 Papenburg 10\n",
"619 Rastenburg 10\n",
"620 Repelen-Baerl j. Moers Krs. Wesel 10\n",
"621 Rhede 10\n",
"622 Rumeln-Kaldenhausen Jetzt Duisburg 10\n",
"623 Sangerhausen 10\n",
"624 Sonsbeck 10\n",
"625 Starogard Gdanski 10\n",
"626 Tichau 10\n",
"627 Tomsk 10\n",
"628 Ungeklärt 10\n",
"630 Waren 10\n",
"631 Wolfsberg 10\n",
"632 Wolfsburg 10\n",
"633 Zeitz 10\n",
"634 Zittau 10\n",
"\n",
"[632 rows x 2 columns]"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"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.5.1"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment