refactoring

This commit is contained in:
frankknoll
2022-12-14 11:03:13 +01:00
parent bc1b76710c
commit 8a6b248394
2 changed files with 28 additions and 44 deletions

View File

@@ -0,0 +1,27 @@
import pandas as pd
class ColumnsAdder:
def __init__(self, kreise):
self.kreise = kreise
def addKreisAndBundeslandAndEinwohnerzahlColumns(self, dataFrame):
dataFrame = self.addKreisAndEinwohnerzahlColumns(dataFrame)
return self._addBundeslandColumn(dataFrame)
def addKreisAndEinwohnerzahlColumns(self, dataFrame):
dataFrame_kreise = pd.merge(dataFrame, self.kreise, how = 'left', left_on = 'gemeindeschluessel', right_index = True)
dataFrame['Kreis'] = dataFrame_kreise['Kreis']
dataFrame['Einwohnerzahl'] = dataFrame_kreise['Einwohnerzahl']
return dataFrame
def _addBundeslandColumn(self, dataFrame):
return pd.merge(
dataFrame,
self._createBundeslandByKeyTable(),
how = 'left',
left_on = 'bundesland',
right_index = True)
def _createBundeslandByKeyTable(self):
return self.kreise[self.kreise.index.str.len() == 2][['Bundesland']]

View File

@@ -26,6 +26,7 @@
"from DateProvider import DateProvider\n",
"from datetime import datetime\n",
"from HtmlTransformerUtil import HtmlTransformerUtil\n",
"from ColumnsAdder import ColumnsAdder\n",
"\n",
"pd.set_option('display.max_rows', 100)\n",
"pd.set_option('display.max_columns', None)\n",
@@ -42,16 +43,6 @@
"print(datetime.now().strftime(\"%d.%m.%Y, %H:%M:%S Uhr\"))"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "98981ab9",
"metadata": {},
"outputs": [],
"source": [
"os.getcwd()"
]
},
{
"cell_type": "code",
"execution_count": null,
@@ -174,40 +165,6 @@
"kreise"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "af96fb11",
"metadata": {},
"outputs": [],
"source": [
"class ColumnsAdder:\n",
"\n",
" def __init__(self, kreise):\n",
" self.kreise = kreise\n",
"\n",
" def addKreisAndBundeslandAndEinwohnerzahlColumns(self, dataFrame):\n",
" dataFrame = self.addKreisAndEinwohnerzahlColumns(dataFrame)\n",
" return self._addBundeslandColumn(dataFrame)\n",
" \n",
" def addKreisAndEinwohnerzahlColumns(self, dataFrame):\n",
" dataFrame_kreise = pd.merge(dataFrame, self.kreise, how = 'left', left_on = 'gemeindeschluessel', right_index = True)\n",
" dataFrame['Kreis'] = dataFrame_kreise['Kreis']\n",
" dataFrame['Einwohnerzahl'] = dataFrame_kreise['Einwohnerzahl']\n",
" return dataFrame\n",
"\n",
" def _addBundeslandColumn(self, dataFrame):\n",
" return pd.merge(\n",
" dataFrame,\n",
" self._createBundeslandByKeyTable(),\n",
" how = 'left',\n",
" left_on = 'bundesland',\n",
" right_index = True)\n",
"\n",
" def _createBundeslandByKeyTable(self):\n",
" return self.kreise[self.kreise.index.str.len() == 2][['Bundesland']]\n"
]
},
{
"cell_type": "code",
"execution_count": null,