domino.agg

 1from domino.categorical_analysis import get_xr_occurrence
 2
 3def aggregate_ds(ds,dim,agg_func,**agg_kwargs):
 4    """
 5    A wrapper function for applying aggregation functions to datasets.
 6    **Arguments**
 7    *ds* An xarray.Dataset to aggregate
 8    *dim* A string specifiying the dimension of *ds* to aggregate over.
 9    *agg_func* An aggregation function with signature (xarray.Dataset,string,**agg_kwargs)->(xarray.Dataset)
10    
11    **Outputs**
12    An xarray.Dataset aggregated over *dim*.
13    """
14    return ds.map(agg_func,dim=dim,**agg_kwargs)
15def mean_ds(ds,dim):
16    """Returns the mean of the dataset over dim"""
17    return aggregate_ds(ds,dim,lambda da,dim: da.mean(dim=dim))
18def std_ds(ds,dim):
19    """Returns the standard deviation of the dataset over dim"""
20    return aggregate_ds(ds,dim,lambda da,dim: da.std(dim=dim))
21def cat_occ_ds(ds,dim,cat_ds):
22    """Returns the occurrence frequency of the dataset's categorical variables"""
23    return aggregate_ds(ds,dim,get_xr_occurrence,s=cat_ds,coord_name='variable_cat_val')
def aggregate_ds(ds, dim, agg_func, **agg_kwargs):
 4def aggregate_ds(ds,dim,agg_func,**agg_kwargs):
 5    """
 6    A wrapper function for applying aggregation functions to datasets.
 7    **Arguments**
 8    *ds* An xarray.Dataset to aggregate
 9    *dim* A string specifiying the dimension of *ds* to aggregate over.
10    *agg_func* An aggregation function with signature (xarray.Dataset,string,**agg_kwargs)->(xarray.Dataset)
11    
12    **Outputs**
13    An xarray.Dataset aggregated over *dim*.
14    """
15    return ds.map(agg_func,dim=dim,**agg_kwargs)

A wrapper function for applying aggregation functions to datasets. Arguments ds An xarray.Dataset to aggregate dim A string specifiying the dimension of ds to aggregate over. agg_func An aggregation function with signature (xarray.Dataset,string,**agg_kwargs)->(xarray.Dataset)

Outputs An xarray.Dataset aggregated over dim.

def mean_ds(ds, dim):
16def mean_ds(ds,dim):
17    """Returns the mean of the dataset over dim"""
18    return aggregate_ds(ds,dim,lambda da,dim: da.mean(dim=dim))

Returns the mean of the dataset over dim

def std_ds(ds, dim):
19def std_ds(ds,dim):
20    """Returns the standard deviation of the dataset over dim"""
21    return aggregate_ds(ds,dim,lambda da,dim: da.std(dim=dim))

Returns the standard deviation of the dataset over dim

def cat_occ_ds(ds, dim, cat_ds):
22def cat_occ_ds(ds,dim,cat_ds):
23    """Returns the occurrence frequency of the dataset's categorical variables"""
24    return aggregate_ds(ds,dim,get_xr_occurrence,s=cat_ds,coord_name='variable_cat_val')

Returns the occurrence frequency of the dataset's categorical variables