diff --git a/raster_aggregation/serializers.py b/raster_aggregation/serializers.py index c86a4fe..4765a35 100644 --- a/raster_aggregation/serializers.py +++ b/raster_aggregation/serializers.py @@ -52,13 +52,16 @@ class ValueCountResultSerializer(serializers.ModelSerializer): max = serializers.FloatField(source='stats_max', read_only=True) avg = serializers.FloatField(source='stats_avg', read_only=True) std = serializers.FloatField(source='stats_std', read_only=True) + pcount = serializers.FloatField(source='stats_cumsum_t0', read_only=True) + psum = serializers.FloatField(source='stats_cumsum_t1', read_only=True) + psumsq = serializers.FloatField(source='stats_cumsum_t2', read_only=True) class Meta: model = ValueCountResult fields = ( 'id', 'aggregationarea', 'rasterlayers', 'formula', 'layer_names', 'zoom', 'units', 'grouping', 'value', 'created', 'status', - 'min', 'max', 'avg', 'std', + 'min', 'max', 'avg', 'std', 'pcount', 'psum', 'psumsq', ) read_only_fields = ('id', 'value', 'created', 'status', 'rasterlayers',) diff --git a/tests/test_aggregation_api.py b/tests/test_aggregation_api.py index 8028573..f92de16 100644 --- a/tests/test_aggregation_api.py +++ b/tests/test_aggregation_api.py @@ -72,6 +72,9 @@ def test_aggregation_api_stats(self): self.assertEqual(result['max'], 225) self.assertEqual(result['avg'], 27.4032615692726) self.assertEqual(result['std'], 39.3484035359834) + self.assertEqual(result['pcount'], 41943) + self.assertEqual(result['psum'], 1149375) + self.assertEqual(result['psumsq'], 96436839) def test_aggregation_api_count_explicit_zoom(self): self.data['zoom'] = 11