diff --git a/openeo_processes_dask/process_implementations/cubes/aggregate.py b/openeo_processes_dask/process_implementations/cubes/aggregate.py index 2729001..56356a6 100644 --- a/openeo_processes_dask/process_implementations/cubes/aggregate.py +++ b/openeo_processes_dask/process_implementations/cubes/aggregate.py @@ -76,7 +76,7 @@ def aggregate_temporal( labels_nans = labels_nans[~mask] intervals_flat = np.unique(intervals_flat) - data[t] = data[t].values.astype("float") + data[t] = np.datetime64(data[t].values).astype("float") grouped_data = data.groupby_bins(t, bins=intervals_flat) positional_parameters = {"data": 0} groups = grouped_data.reduce( @@ -84,7 +84,7 @@ def aggregate_temporal( ) groups[t + "_bins"] = labels_nans data_agg_temp = groups.sel({t + "_bins": labels}) - data_agg_temp = data_agg_temp.rename(t + "_bins", t) + data_agg_temp = data_agg_temp.rename({t + "_bins": t}) return data_agg_temp diff --git a/tests/test_aggregate.py b/tests/test_aggregate.py index a531f71..1e5c81b 100644 --- a/tests/test_aggregate.py +++ b/tests/test_aggregate.py @@ -17,7 +17,7 @@ @pytest.mark.parametrize("size", [(6, 5, 100, 4)]) @pytest.mark.parametrize("dtype", [np.float64]) @pytest.mark.parametrize( - "temporal_extent,intervals,expected", + "temporal_extent,intervals,labels, expected", [ ( ["2018-01-01", "2019-01-01"], @@ -25,6 +25,7 @@ ["2018-01-01T12:00:00", "2018-06-01T12:00:00"], ["2018-07-01T12:00:00", "2018-12-01T12:00:00"], ], + ["half-1", "half-2"], 2, ) ],