Source code for openeo_udf.functions.datacube_reduce_time_mean
# -*- coding: utf-8 -*-
from openeo_udf.api.datacube import DataCube
from openeo_udf.api.udf_data import UdfData
__license__ = "Apache License, Version 2.0"
__author__ = "Soeren Gebbert"
__copyright__ = "Copyright 2018, Soeren Gebbert"
__maintainer__ = "Soeren Gebbert"
__email__ = "soerengebbert@googlemail.com"
[docs]def hyper_mean(udf_data: UdfData):
"""Compute the mean of the time dimension of a hyper cube
Hypercubes with time dimensions are required. The mean reduction of th time axis will be applied
to all hypercube dimensions.
Args:
udf_data (UdfData): The UDF data object that contains raster and vector tiles as well as hypercubes
and structured data.
Returns:
This function will not return anything, the UdfData object "udf_data" must be used to store the resulting
data.
"""
# Iterate over each tile
cube_list = []
for cube in udf_data.get_datacube_list():
mean = cube.array.mean(dim="t")
mean.name = cube.id + "_mean"
cube_list.append(DataCube(array=mean))
udf_data.set_datacube_list(cube_list)