refactoring

This commit is contained in:
frankknoll
2022-02-08 20:02:10 +01:00
parent cfd44b6d8c
commit 24d8f847ef

View File

@@ -198,6 +198,20 @@
" return summationTable.rename(columns = columnNameMappingsDict)\n", " return summationTable.rename(columns = columnNameMappingsDict)\n",
"\n", "\n",
" @staticmethod\n", " @staticmethod\n",
" def createSummationTableHavingSevereReportsColumn(dataFrame):\n",
" summationTable = SummationTableFactory.createSummationTable(\n",
" dataFrame,\n",
" columnNameMappingsDict = {\n",
" \"DIED_size\": \"Total reports\",\n",
" \"DIED_sum\": \"Deaths\",\n",
" \"L_THREAT_sum\": \"Life Threatening Illnesses\",\n",
" \"DISABLE_sum\": \"Disabilities\"\n",
" })\n",
" summationTable['Severe reports (%)'] = (summationTable['Deaths'] + summationTable['Disabilities'] + summationTable['Life Threatening Illnesses']) / summationTable['Total reports'] * 100\n",
" summationTable = summationTable[['Total reports', 'Deaths', 'Disabilities', 'Life Threatening Illnesses', 'Severe reports (%)']]\n",
" return summationTable\n",
"\n",
" @staticmethod\n",
" def _flattenColumns(dataFrame):\n", " def _flattenColumns(dataFrame):\n",
" dataFrame.columns = [\"_\".join(a) for a in dataFrame.columns.to_flat_index()]\n" " dataFrame.columns = [\"_\".join(a) for a in dataFrame.columns.to_flat_index()]\n"
] ]
@@ -266,35 +280,20 @@
" @staticmethod\n", " @staticmethod\n",
" def createDoseTable(dataFrame):\n", " def createDoseTable(dataFrame):\n",
" dataFrame = DataFrameFilter().filterByCovid19(dataFrame)\n", " dataFrame = DataFrameFilter().filterByCovid19(dataFrame)\n",
" return DoseTableFactory._createDoseTable(\n", " return SummationTableFactory.createSummationTableHavingSevereReportsColumn(\n",
" dataFrame.groupby(\n", " dataFrame.groupby(\n",
" dataFrame['VAX_DOSE_SERIES'].rename('Dose')))\n", " dataFrame['VAX_DOSE_SERIES'].rename('Dose')))\n",
"\n", "\n",
" @staticmethod\n", " @staticmethod\n",
" def createDoseByMonthTable(dataFrame):\n", " def createDoseByMonthTable(dataFrame):\n",
" dataFrame = DataFrameFilter().filterByCovid19(dataFrame)\n", " dataFrame = DataFrameFilter().filterByCovid19(dataFrame)\n",
" return DoseTableFactory._createDoseTable(\n", " return SummationTableFactory.createSummationTableHavingSevereReportsColumn(\n",
" dataFrame.groupby(\n", " dataFrame.groupby(\n",
" [\n", " [\n",
" dataFrame['RECVDATE'].dt.year.rename('Year'),\n", " dataFrame['RECVDATE'].dt.year.rename('Year'),\n",
" dataFrame['RECVDATE'].dt.month.rename('Month'),\n", " dataFrame['RECVDATE'].dt.month.rename('Month'),\n",
" dataFrame['VAX_DOSE_SERIES'].rename('Dose')\n", " dataFrame['VAX_DOSE_SERIES'].rename('Dose')\n",
" ]))\n", " ]))\n"
"\n",
" # FK-TODO: rename _createDoseTable()\n",
" @staticmethod\n",
" def _createDoseTable(dataFrame):\n",
" doseTable = SummationTableFactory.createSummationTable(\n",
" dataFrame,\n",
" columnNameMappingsDict = {\n",
" \"DIED_size\": \"Total reports\",\n",
" \"DIED_sum\": \"Deaths\",\n",
" \"L_THREAT_sum\": \"Life Threatening Illnesses\",\n",
" \"DISABLE_sum\": \"Disabilities\"\n",
" })\n",
" doseTable = doseTable[['Total reports', 'Deaths', 'Disabilities', 'Life Threatening Illnesses']]\n",
" doseTable['Severe reports (%)'] = (doseTable['Deaths'] + doseTable['Disabilities'] + doseTable['Life Threatening Illnesses']) / doseTable['Total reports'] * 100\n",
" return doseTable\n"
] ]
}, },
{ {
@@ -352,14 +351,14 @@
" def _createInternationalLotTable(dataFrame):\n", " def _createInternationalLotTable(dataFrame):\n",
" countryColumnName = 'Country'\n", " countryColumnName = 'Country'\n",
" dataFrame = CountryColumnAdder.addCountryColumn(dataFrame, countryColumnName = countryColumnName)\n", " dataFrame = CountryColumnAdder.addCountryColumn(dataFrame, countryColumnName = countryColumnName)\n",
" return DoseTableFactory._createDoseTable(dataFrame.groupby(dataFrame[countryColumnName]))\n", " return SummationTableFactory.createSummationTableHavingSevereReportsColumn(dataFrame.groupby(dataFrame[countryColumnName]))\n",
"\n", "\n",
" @staticmethod\n", " @staticmethod\n",
" def _createBatchCodeTableByCountry(dataFrame : pd.DataFrame, country):\n", " def _createBatchCodeTableByCountry(dataFrame : pd.DataFrame, country):\n",
" countryColumnName = 'Country'\n", " countryColumnName = 'Country'\n",
" dataFrame = CountryColumnAdder.addCountryColumn(dataFrame, countryColumnName = countryColumnName)\n", " dataFrame = CountryColumnAdder.addCountryColumn(dataFrame, countryColumnName = countryColumnName)\n",
" dataFrame = DataFrameFilter().filterByCountry(dataFrame, country = country, countryColumnName = countryColumnName)\n", " dataFrame = DataFrameFilter().filterByCountry(dataFrame, country = country, countryColumnName = countryColumnName)\n",
" return DoseTableFactory._createDoseTable(dataFrame.groupby('VAX_LOT'))\n" " return SummationTableFactory.createSummationTableHavingSevereReportsColumn(dataFrame.groupby('VAX_LOT'))\n"
] ]
}, },
{ {
@@ -1149,14 +1148,6 @@
" 'Australia'\n", " 'Australia'\n",
" ])" " ])"
] ]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ea8e4d13",
"metadata": {},
"outputs": [],
"source": []
} }
], ],
"metadata": { "metadata": {