refactoring

This commit is contained in:
frankknoll
2022-02-07 14:42:14 +01:00
parent a06ce06479
commit 33dd6b229e

View File

@@ -172,8 +172,8 @@
"class AggregationHelper:\n", "class AggregationHelper:\n",
"\n", "\n",
" @staticmethod\n", " @staticmethod\n",
" def aggregateAndFlattenColumnsAndRenameColumns(dataFrame, aggFunctionsByColumn, columnNameMappingsDict):\n", " def aggregateAndFlattenColumnsAndRenameColumns(groupBy, aggFunctionsByColumn, columnNameMappingsDict):\n",
" aggregatedDataFrame = dataFrame.agg(aggFunctionsByColumn)\n", " aggregatedDataFrame = groupBy.agg(aggFunctionsByColumn)\n",
" AggregationHelper._flattenColumns(aggregatedDataFrame)\n", " AggregationHelper._flattenColumns(aggregatedDataFrame)\n",
" return aggregatedDataFrame.rename(columns = columnNameMappingsDict)\n", " return aggregatedDataFrame.rename(columns = columnNameMappingsDict)\n",
"\n", "\n",
@@ -198,14 +198,14 @@
"\n", "\n",
" # create table from https://www.howbadismybatch.com/combined.html\n", " # create table from https://www.howbadismybatch.com/combined.html\n",
" def createSevereEffectsBatchCodeTable(self):\n", " def createSevereEffectsBatchCodeTable(self):\n",
" batchCodeTable = BatchCodeTableHelper._createSevereEffectsBatchCodeTable(self.dataFrame.groupby('VAX_LOT'))\n", " batchCodeTable = BatchCodeTableHelper.createSummationTable(self.dataFrame.groupby('VAX_LOT'))\n",
" batchCodeTable = batchCodeTable[['ADRs', 'DEATHS', 'DISABILITIES', 'LIFE THREATENING ILLNESSES', 'HOSPITALISATIONS', 'EMERGENCY ROOM OR DOCTOR VISITS']]\n", " batchCodeTable = batchCodeTable[['ADRs', 'DEATHS', 'DISABILITIES', 'LIFE THREATENING ILLNESSES', 'HOSPITALISATIONS', 'EMERGENCY ROOM OR DOCTOR VISITS']]\n",
" batchCodeTable = batchCodeTable.sort_values(by = 'ADRs', ascending = False)\n", " batchCodeTable = batchCodeTable.sort_values(by = 'ADRs', ascending = False)\n",
" return self._addCompanyColumn(batchCodeTable, self._createCompanyByBatchCodeTable())\n", " return self._addCompanyColumn(batchCodeTable, self._createCompanyByBatchCodeTable())\n",
"\n", "\n",
" @staticmethod\n", " @staticmethod\n",
" def _createSevereEffectsBatchCodeTable(\n", " def createSummationTable(\n",
" dataFrame,\n", " groupBy,\n",
" # FK-TODO: rename \"ADRs\" and \"Total reports\" to \"Total Number of Adverse Reaction Reports\" in all places\n", " # FK-TODO: rename \"ADRs\" and \"Total reports\" to \"Total Number of Adverse Reaction Reports\" in all places\n",
" columnNameMappingsDict = {\n", " columnNameMappingsDict = {\n",
" \"DIED_size\": \"ADRs\",\n", " \"DIED_size\": \"ADRs\",\n",
@@ -216,7 +216,7 @@
" 'ER_VISIT_sum': 'EMERGENCY ROOM OR DOCTOR VISITS'\n", " 'ER_VISIT_sum': 'EMERGENCY ROOM OR DOCTOR VISITS'\n",
" }):\n", " }):\n",
" return AggregationHelper.aggregateAndFlattenColumnsAndRenameColumns(\n", " return AggregationHelper.aggregateAndFlattenColumnsAndRenameColumns(\n",
" dataFrame = dataFrame,\n", " groupBy = groupBy,\n",
" aggFunctionsByColumn = {\n", " aggFunctionsByColumn = {\n",
" 'DIED': ['sum', 'size'],\n", " 'DIED': ['sum', 'size'],\n",
" 'L_THREAT': 'sum',\n", " 'L_THREAT': 'sum',\n",
@@ -290,7 +290,7 @@
" # FK-TODO: DRY because it generates a subset of BatchCodeTableHelper.createSevereEffectsBatchCodeTable()\n", " # FK-TODO: DRY because it generates a subset of BatchCodeTableHelper.createSevereEffectsBatchCodeTable()\n",
" @staticmethod\n", " @staticmethod\n",
" def _getDoseTable(dataFrame):\n", " def _getDoseTable(dataFrame):\n",
" doseTable = BatchCodeTableHelper._createSevereEffectsBatchCodeTable(\n", " doseTable = BatchCodeTableHelper.createSummationTable(\n",
" dataFrame,\n", " dataFrame,\n",
" columnNameMappingsDict = {\n", " columnNameMappingsDict = {\n",
" \"DIED_size\": \"Total reports\",\n", " \"DIED_size\": \"Total reports\",\n",
@@ -597,7 +597,7 @@
"\n", "\n",
"class BatchCodeTableFactoryTest(unittest.TestCase):\n", "class BatchCodeTableFactoryTest(unittest.TestCase):\n",
"\n", "\n",
" def test_createSevereEffectsBatchCodeTable(self):\n", " def testcreateSummationTable(self):\n",
" # Given\n", " # Given\n",
" dataFrame = VaersDescr2DataFrameConverter.createDataFrameFromDescrs(\n", " dataFrame = VaersDescr2DataFrameConverter.createDataFrameFromDescrs(\n",
" [\n", " [\n",