From 480b1dcca0d3866c008547b541117c6fe647e132 Mon Sep 17 00:00:00 2001 From: frankknoll Date: Wed, 2 Mar 2022 10:48:14 +0100 Subject: [PATCH] refactoring --- src/intensivstationen/Intensivstationen.ipynb | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/intensivstationen/Intensivstationen.ipynb b/src/intensivstationen/Intensivstationen.ipynb index e27b34480ae..3b3ddb2b9b9 100644 --- a/src/intensivstationen/Intensivstationen.ipynb +++ b/src/intensivstationen/Intensivstationen.ipynb @@ -75,8 +75,19 @@ " dataFrame_kreise = pd.merge(dataFrame, self.kreise, how = 'left', left_on = 'gemeindeschluessel', right_index = True)\n", " dataFrame['Kreis'] = dataFrame_kreise[3]\n", " dataFrame['Einwohnerzahl'] = dataFrame_kreise[6]\n", - " dataFrame['Bundesland'] = dataFrame['bundesland'].map(lambda bundesland: self.kreise.loc[bundesland, '2'])\n", - " return dataFrame" + " return self._addBundeslandColumn(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", + " bundeslandByKeyTable = self.kreise.reset_index().rename(columns = {1: 'Key', '2': 'Bundesland'})[['Key', 'Bundesland']]\n", + " return bundeslandByKeyTable[bundeslandByKeyTable['Key'].str.len() == 2].set_index('Key')\n" ] }, {