From e3046996b116ddcb54f1ed47bc93cbafd0920c55 Mon Sep 17 00:00:00 2001 From: Matt Poole Date: Tue, 21 Jul 2026 18:28:06 +0100 Subject: [PATCH 1/2] switch Nan values to None --- digital_land/log.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/digital_land/log.py b/digital_land/log.py index 67aef60e..f546f2d8 100644 --- a/digital_land/log.py +++ b/digital_land/log.py @@ -165,7 +165,14 @@ def add_severity_column(self, severity_mapping_path=None, severity_mapping=None) self.fieldnames.append("severity") self.fieldnames.append("description") self.fieldnames.append("responsibility") - self.rows = merged_df.to_dict(orient="records") + # Switch Pandas NaN to None to avoid issues with JSON + self.rows = [ + { + k: (None if isinstance(v, float) and v != v else v) + for k, v in row.items() + } + for row in merged_df.to_dict(orient="records") + ] def appendErrorMessage(self, mapping_path): # Read the mapping from the JSON config file From d22a005f417859bd27384bbe535cbd9e11daa52f Mon Sep 17 00:00:00 2001 From: Matt Poole Date: Wed, 22 Jul 2026 12:22:07 +0100 Subject: [PATCH 2/2] use pd isna instead --- digital_land/log.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/digital_land/log.py b/digital_land/log.py index f546f2d8..8abeeb94 100644 --- a/digital_land/log.py +++ b/digital_land/log.py @@ -167,10 +167,7 @@ def add_severity_column(self, severity_mapping_path=None, severity_mapping=None) self.fieldnames.append("responsibility") # Switch Pandas NaN to None to avoid issues with JSON self.rows = [ - { - k: (None if isinstance(v, float) and v != v else v) - for k, v in row.items() - } + {k: (None if pd.isna(v) else v) for k, v in row.items()} for row in merged_df.to_dict(orient="records") ]