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