# Baseline


<!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! -->

``` python
cml, wet = open_cml_sample(), open_cml_sample("wetdry")
```

## Last dry step as baseline

We will implement the simplest possible model, which consists of
assuming that the baseline is constant and equal to the last step
classified as dry. This algorithm only requires past time steps, which
makes it very suitable for real-time rainfall estimation. In addition,
it is very easy to compute, which makes it suitable for low-resource
computation. So let’s say we have the following time series for a
sublink:

    [59, 60, 90, 75, 59, 58, 59, 80]

And lets assume that our wet/dry classification model classified the
data as:

    ['dry', 'dry', 'wet', 'wet', 'dry', 'dry', 'dry', 'wet']

Then the baseline would be:

<div>
<style scoped>
    .dataframe tbody tr th:only-of-type {
        vertical-align: middle;
    }
&#10;    .dataframe tbody tr th {
        vertical-align: top;
    }
&#10;    .dataframe thead th {
        text-align: right;
    }
</style>

<table class="dataframe" data-quarto-postprocess="true" data-border="1">
<thead>
<tr style="text-align: right;">
<th data-quarto-table-cell-role="th"></th>
<th data-quarto-table-cell-role="th">Attenuation</th>
<th data-quarto-table-cell-role="th">Wet/Dry</th>
<th data-quarto-table-cell-role="th">Baseline</th>
</tr>
</thead>
<tbody>
<tr>
<td data-quarto-table-cell-role="th">0</td>
<td>59</td>
<td>dry</td>
<td>59</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">1</td>
<td>60</td>
<td>dry</td>
<td>60</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">2</td>
<td>90</td>
<td>wet</td>
<td>60</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">3</td>
<td>75</td>
<td>wet</td>
<td>60</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">4</td>
<td>59</td>
<td>dry</td>
<td>59</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">5</td>
<td>58</td>
<td>dry</td>
<td>58</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">6</td>
<td>59</td>
<td>dry</td>
<td>59</td>
</tr>
<tr>
<td data-quarto-table-cell-role="th">7</td>
<td>80</td>
<td>wet</td>
<td>59</td>
</tr>
</tbody>
</table>

</div>

------------------------------------------------------------------------

<a
href="https://github.com/rainsmore/raincell/blob/main/raincell/baseline.py#L13"
target="_blank" style="float:right; font-size:smaller">source</a>

### get_bl_as_last_dry_step

``` python

def get_bl_as_last_dry_step(
    att:xarray.core.dataset.Dataset | xarray.core.dataarray.DataArray, # ds containing the raw attenuation variables
    wet:DataArray, # da containing wet events as booleans
)->xarray.core.dataset.Dataset | xarray.core.dataarray.DataArray: # ds containing the baseline of all the attenuation variables in the input

```

*Create a baseline based on the last dry step before the each wet
event.*

<details open class="code-fold">
<summary>Exported source</summary>

``` python
def get_bl_as_last_dry_step(
        att: xr.Dataset|xr.DataArray, # ds containing the raw attenuation variables
        wet: xr.DataArray # da containing wet events as booleans
        ) -> xr.Dataset|xr.DataArray: # ds containing the baseline of all the attenuation variables in the input
    """Create a baseline based on the last dry step before the each wet event."""
    def updated_attrs(da, method):
        return {"long_name": getattr(da.attrs, "long_name", da.name) + "_baseline", "method": method}
    baseline = att.where(~wet).ffill(dim="time")
    fname = inspect.currentframe().f_code.co_name
    if isinstance(att, xr.DataArray):
        baseline.attrs = {**baseline.attrs, **updated_attrs(baseline, fname)}
    else:
        for v in baseline.data_vars:
            baseline[v].attrs = {**baseline[v].attrs, **updated_attrs(baseline[v], fname)}
    return baseline
```

</details>

<div><svg style="position: absolute; width: 0; height: 0; overflow: hidden">
<defs>
<symbol id="icon-database" viewBox="0 0 32 32">
<path d="M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z"></path>
<path d="M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z"></path>
<path d="M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z"></path>
</symbol>
<symbol id="icon-file-text2" viewBox="0 0 32 32">
<path d="M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z"></path>
<path d="M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z"></path>
<path d="M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z"></path>
<path d="M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z"></path>
</symbol>
</defs>
</svg>
<style>/* CSS stylesheet for displaying xarray objects in notebooks */
&#10;:root {
  --xr-font-color0: var(
    --jp-content-font-color0,
    var(--pst-color-text-base rgba(0, 0, 0, 1))
  );
  --xr-font-color2: var(
    --jp-content-font-color2,
    var(--pst-color-text-base, rgba(0, 0, 0, 0.54))
  );
  --xr-font-color3: var(
    --jp-content-font-color3,
    var(--pst-color-text-base, rgba(0, 0, 0, 0.38))
  );
  --xr-border-color: var(
    --jp-border-color2,
    hsl(from var(--pst-color-on-background, white) h s calc(l - 10))
  );
  --xr-disabled-color: var(
    --jp-layout-color3,
    hsl(from var(--pst-color-on-background, white) h s calc(l - 40))
  );
  --xr-background-color: var(
    --jp-layout-color0,
    var(--pst-color-on-background, white)
  );
  --xr-background-color-row-even: var(
    --jp-layout-color1,
    hsl(from var(--pst-color-on-background, white) h s calc(l - 5))
  );
  --xr-background-color-row-odd: var(
    --jp-layout-color2,
    hsl(from var(--pst-color-on-background, white) h s calc(l - 15))
  );
}
&#10;html[theme="dark"],
html[data-theme="dark"],
body[data-theme="dark"],
body.vscode-dark {
  --xr-font-color0: var(
    --jp-content-font-color0,
    var(--pst-color-text-base, rgba(255, 255, 255, 1))
  );
  --xr-font-color2: var(
    --jp-content-font-color2,
    var(--pst-color-text-base, rgba(255, 255, 255, 0.54))
  );
  --xr-font-color3: var(
    --jp-content-font-color3,
    var(--pst-color-text-base, rgba(255, 255, 255, 0.38))
  );
  --xr-border-color: var(
    --jp-border-color2,
    hsl(from var(--pst-color-on-background, #111111) h s calc(l + 10))
  );
  --xr-disabled-color: var(
    --jp-layout-color3,
    hsl(from var(--pst-color-on-background, #111111) h s calc(l + 40))
  );
  --xr-background-color: var(
    --jp-layout-color0,
    var(--pst-color-on-background, #111111)
  );
  --xr-background-color-row-even: var(
    --jp-layout-color1,
    hsl(from var(--pst-color-on-background, #111111) h s calc(l + 5))
  );
  --xr-background-color-row-odd: var(
    --jp-layout-color2,
    hsl(from var(--pst-color-on-background, #111111) h s calc(l + 15))
  );
}
&#10;.xr-wrap {
  display: block !important;
  min-width: 300px;
  max-width: 700px;
  line-height: 1.6;
}
&#10;.xr-text-repr-fallback {
  /* fallback to plain text repr when CSS is not injected (untrusted notebook) */
  display: none;
}
&#10;.xr-header {
  padding-top: 6px;
  padding-bottom: 6px;
  margin-bottom: 4px;
  border-bottom: solid 1px var(--xr-border-color);
}
&#10;.xr-header > div,
.xr-header > ul {
  display: inline;
  margin-top: 0;
  margin-bottom: 0;
}
&#10;.xr-obj-type,
.xr-obj-name,
.xr-group-name {
  margin-left: 2px;
  margin-right: 10px;
}
&#10;.xr-group-name::before {
  content: "📁";
  padding-right: 0.3em;
}
&#10;.xr-group-name,
.xr-obj-type {
  color: var(--xr-font-color2);
}
&#10;.xr-sections {
  padding-left: 0 !important;
  display: grid;
  grid-template-columns: 150px auto auto 1fr 0 20px 0 20px;
  margin-block-start: 0;
  margin-block-end: 0;
}
&#10;.xr-section-item {
  display: contents;
}
&#10;.xr-section-item input {
  display: inline-block;
  opacity: 0;
  height: 0;
  margin: 0;
}
&#10;.xr-section-item input + label {
  color: var(--xr-disabled-color);
  border: 2px solid transparent !important;
}
&#10;.xr-section-item input:enabled + label {
  cursor: pointer;
  color: var(--xr-font-color2);
}
&#10;.xr-section-item input:focus + label {
  border: 2px solid var(--xr-font-color0) !important;
}
&#10;.xr-section-item input:enabled + label:hover {
  color: var(--xr-font-color0);
}
&#10;.xr-section-summary {
  grid-column: 1;
  color: var(--xr-font-color2);
  font-weight: 500;
}
&#10;.xr-section-summary > span {
  display: inline-block;
  padding-left: 0.5em;
}
&#10;.xr-section-summary-in:disabled + label {
  color: var(--xr-font-color2);
}
&#10;.xr-section-summary-in + label:before {
  display: inline-block;
  content: "►";
  font-size: 11px;
  width: 15px;
  text-align: center;
}
&#10;.xr-section-summary-in:disabled + label:before {
  color: var(--xr-disabled-color);
}
&#10;.xr-section-summary-in:checked + label:before {
  content: "▼";
}
&#10;.xr-section-summary-in:checked + label > span {
  display: none;
}
&#10;.xr-section-summary,
.xr-section-inline-details {
  padding-top: 4px;
}
&#10;.xr-section-inline-details {
  grid-column: 2 / -1;
}
&#10;.xr-section-details {
  display: none;
  grid-column: 1 / -1;
  margin-top: 4px;
  margin-bottom: 5px;
}
&#10;.xr-section-summary-in:checked ~ .xr-section-details {
  display: contents;
}
&#10;.xr-group-box {
  display: inline-grid;
  grid-template-columns: 0px 20px auto;
  width: 100%;
}
&#10;.xr-group-box-vline {
  grid-column-start: 1;
  border-right: 0.2em solid;
  border-color: var(--xr-border-color);
  width: 0px;
}
&#10;.xr-group-box-hline {
  grid-column-start: 2;
  grid-row-start: 1;
  height: 1em;
  width: 20px;
  border-bottom: 0.2em solid;
  border-color: var(--xr-border-color);
}
&#10;.xr-group-box-contents {
  grid-column-start: 3;
}
&#10;.xr-array-wrap {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 20px auto;
}
&#10;.xr-array-wrap > label {
  grid-column: 1;
  vertical-align: top;
}
&#10;.xr-preview {
  color: var(--xr-font-color3);
}
&#10;.xr-array-preview,
.xr-array-data {
  padding: 0 5px !important;
  grid-column: 2;
}
&#10;.xr-array-data,
.xr-array-in:checked ~ .xr-array-preview {
  display: none;
}
&#10;.xr-array-in:checked ~ .xr-array-data,
.xr-array-preview {
  display: inline-block;
}
&#10;.xr-dim-list {
  display: inline-block !important;
  list-style: none;
  padding: 0 !important;
  margin: 0;
}
&#10;.xr-dim-list li {
  display: inline-block;
  padding: 0;
  margin: 0;
}
&#10;.xr-dim-list:before {
  content: "(";
}
&#10;.xr-dim-list:after {
  content: ")";
}
&#10;.xr-dim-list li:not(:last-child):after {
  content: ",";
  padding-right: 5px;
}
&#10;.xr-has-index {
  font-weight: bold;
}
&#10;.xr-var-list,
.xr-var-item {
  display: contents;
}
&#10;.xr-var-item > div,
.xr-var-item label,
.xr-var-item > .xr-var-name span {
  background-color: var(--xr-background-color-row-even);
  border-color: var(--xr-background-color-row-odd);
  margin-bottom: 0;
  padding-top: 2px;
}
&#10;.xr-var-item > .xr-var-name:hover span {
  padding-right: 5px;
}
&#10;.xr-var-list > li:nth-child(odd) > div,
.xr-var-list > li:nth-child(odd) > label,
.xr-var-list > li:nth-child(odd) > .xr-var-name span {
  background-color: var(--xr-background-color-row-odd);
  border-color: var(--xr-background-color-row-even);
}
&#10;.xr-var-name {
  grid-column: 1;
}
&#10;.xr-var-dims {
  grid-column: 2;
}
&#10;.xr-var-dtype {
  grid-column: 3;
  text-align: right;
  color: var(--xr-font-color2);
}
&#10;.xr-var-preview {
  grid-column: 4;
}
&#10;.xr-index-preview {
  grid-column: 2 / 5;
  color: var(--xr-font-color2);
}
&#10;.xr-var-name,
.xr-var-dims,
.xr-var-dtype,
.xr-preview,
.xr-attrs dt {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 10px;
}
&#10;.xr-var-name:hover,
.xr-var-dims:hover,
.xr-var-dtype:hover,
.xr-attrs dt:hover {
  overflow: visible;
  width: auto;
  z-index: 1;
}
&#10;.xr-var-attrs,
.xr-var-data,
.xr-index-data {
  display: none;
  border-top: 2px dotted var(--xr-background-color);
  padding-bottom: 20px !important;
  padding-top: 10px !important;
}
&#10;.xr-var-attrs-in + label,
.xr-var-data-in + label,
.xr-index-data-in + label {
  padding: 0 1px;
}
&#10;.xr-var-attrs-in:checked ~ .xr-var-attrs,
.xr-var-data-in:checked ~ .xr-var-data,
.xr-index-data-in:checked ~ .xr-index-data {
  display: block;
}
&#10;.xr-var-data > table {
  float: right;
}
&#10;.xr-var-data > pre,
.xr-index-data > pre,
.xr-var-data > table > tbody > tr {
  background-color: transparent !important;
}
&#10;.xr-var-name span,
.xr-var-data,
.xr-index-name div,
.xr-index-data,
.xr-attrs {
  padding-left: 25px !important;
}
&#10;.xr-attrs,
.xr-var-attrs,
.xr-var-data,
.xr-index-data {
  grid-column: 1 / -1;
}
&#10;dl.xr-attrs {
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 125px auto;
}
&#10;.xr-attrs dt,
.xr-attrs dd {
  padding: 0;
  margin: 0;
  float: left;
  padding-right: 10px;
  width: auto;
}
&#10;.xr-attrs dt {
  font-weight: normal;
  grid-column: 1;
}
&#10;.xr-attrs dt:hover span {
  display: inline-block;
  background: var(--xr-background-color);
  padding-right: 10px;
}
&#10;.xr-attrs dd {
  grid-column: 2;
  white-space: pre-wrap;
  word-break: break-all;
}
&#10;.xr-icon-database,
.xr-icon-file-text2,
.xr-no-icon {
  display: inline-block;
  vertical-align: middle;
  width: 1em;
  height: 1.5em !important;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
}
&#10;.xr-var-attrs-in:checked + label > .xr-icon-file-text2,
.xr-var-data-in:checked + label > .xr-icon-database,
.xr-index-data-in:checked + label > .xr-icon-database {
  color: var(--xr-font-color0);
  filter: drop-shadow(1px 1px 5px var(--xr-font-color2));
  stroke-width: 0.8px;
}
</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 36MB
Dimensions:          (cml_id: 126, sublink_id: 6, time: 2964)
Coordinates: (10)
Data variables:
    tsl_max-rsl_max  (cml_id, sublink_id, time) float64 18MB 57.6 57.8 ... nan
    tsl_min-rsl_min  (cml_id, sublink_id, time) float64 18MB 58.8 58.3 ... nan</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-fe192981-091e-4f18-960e-8efa41204aaf' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-fe192981-091e-4f18-960e-8efa41204aaf' class='xr-section-summary'  title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>cml_id</span>: 126</li><li><span class='xr-has-index'>sublink_id</span>: 6</li><li><span class='xr-has-index'>time</span>: 2964</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-bc2b523c-6ba6-4089-a63a-c527ec6749cd' class='xr-section-summary-in' type='checkbox'  ><label for='section-bc2b523c-6ba6-4089-a63a-c527ec6749cd' class='xr-section-summary' >Coordinates: <span>(10)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>cml_id</span></div><div class='xr-var-dims'>(cml_id)</div><div class='xr-var-dtype'>&lt;U19</div><div class='xr-var-preview xr-preview'>&#x27;3.984686N-9.789517E&#x27; ... &#x27;4.095...</div><input id='attrs-df685e5c-0583-4399-b982-db22114c8707' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-df685e5c-0583-4399-b982-db22114c8707' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-fe9f9bee-4c77-4973-842b-c85554695e65' class='xr-var-data-in' type='checkbox'><label for='data-fe9f9bee-4c77-4973-842b-c85554695e65' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>commercial_microwave_link_identifier</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;3.984686N-9.789517E&#x27;, &#x27;3.985691N-9.801648E&#x27;, &#x27;3.996996N-9.761328E&#x27;,
       &#x27;4.002892N-9.746861E&#x27;, &#x27;4.007006N-9.767519E&#x27;, &#x27;4.008236N-9.788792E&#x27;,
       &#x27;4.013028N-9.703569E&#x27;, &#x27;4.013180N-9.765819E&#x27;, &#x27;4.014916N-9.732514E&#x27;,
       &#x27;4.015776N-9.756458E&#x27;, &#x27;4.016656N-9.736544E&#x27;, &#x27;4.016736N-9.764944E&#x27;,
       &#x27;4.016944N-9.753305E&#x27;, &#x27;4.016962N-9.726686E&#x27;, &#x27;4.017736N-9.748042E&#x27;,
       &#x27;4.018721N-9.762325E&#x27;, &#x27;4.018764N-9.746583E&#x27;, &#x27;4.019750N-9.767776E&#x27;,
       &#x27;4.019930N-9.759403E&#x27;, &#x27;4.020440N-9.708914E&#x27;, &#x27;4.021256N-9.746180E&#x27;,
       &#x27;4.021528N-9.798792E&#x27;, &#x27;4.024043N-9.680260E&#x27;, &#x27;4.024381N-9.733274E&#x27;,
       &#x27;4.024750N-9.697977E&#x27;, &#x27;4.025125N-9.770912E&#x27;, &#x27;4.025270N-9.739593E&#x27;,
       &#x27;4.025625N-9.735889E&#x27;, &#x27;4.025880N-9.703252E&#x27;, &#x27;4.026149N-9.695650E&#x27;,
       &#x27;4.028700N-9.729934E&#x27;, &#x27;4.028708N-9.703542E&#x27;, &#x27;4.029412N-9.691581E&#x27;,
       &#x27;4.030556N-9.705569E&#x27;, &#x27;4.030907N-9.694160E&#x27;, &#x27;4.031399N-9.698080E&#x27;,
       &#x27;4.032132N-9.730055E&#x27;, &#x27;4.032560N-9.713835E&#x27;, &#x27;4.033181N-9.761500E&#x27;,
       &#x27;4.033883N-9.691732E&#x27;, &#x27;4.034149N-9.772296E&#x27;, &#x27;4.034701N-9.729347E&#x27;,
       &#x27;4.035134N-9.697875E&#x27;, &#x27;4.035679N-9.685969E&#x27;, &#x27;4.037778N-9.767028E&#x27;,
       &#x27;4.038505N-9.704950E&#x27;, &#x27;4.039270N-9.722472E&#x27;, &#x27;4.039580N-9.737019E&#x27;,
       &#x27;4.040098N-9.700828E&#x27;, &#x27;4.040792N-9.776750E&#x27;, &#x27;4.041057N-9.688122E&#x27;,
       &#x27;4.041068N-9.758319E&#x27;, &#x27;4.041256N-9.730708E&#x27;, &#x27;4.041347N-9.773597E&#x27;,
       &#x27;4.042298N-9.740333E&#x27;, &#x27;4.042502N-9.716614E&#x27;, &#x27;4.042568N-9.698128E&#x27;,
       &#x27;4.042817N-9.705986E&#x27;, &#x27;4.043833N-9.687306E&#x27;, &#x27;4.043927N-9.704314E&#x27;,
       &#x27;4.044597N-9.727069E&#x27;, &#x27;4.044736N-9.710024E&#x27;, &#x27;4.047503N-9.718511E&#x27;,
       &#x27;4.048013N-9.705195E&#x27;, &#x27;4.048153N-9.698625E&#x27;, &#x27;4.048916N-9.707667E&#x27;,
       &#x27;4.049925N-9.774582E&#x27;, &#x27;4.050150N-9.740475E&#x27;, &#x27;4.050347N-9.703473E&#x27;,
       &#x27;4.050528N-9.753875E&#x27;, &#x27;4.052083N-9.788583E&#x27;, &#x27;4.054458N-9.763403E&#x27;,
       &#x27;4.055917N-9.752681E&#x27;, &#x27;4.056070N-9.768000E&#x27;, &#x27;4.056121N-9.742152E&#x27;,
       &#x27;4.056639N-9.747222E&#x27;, &#x27;4.056847N-9.738556E&#x27;, &#x27;4.056959N-9.742472E&#x27;,
       &#x27;4.057459N-9.765805E&#x27;, &#x27;4.058236N-9.768889E&#x27;, &#x27;4.058746N-9.717759E&#x27;,
       &#x27;4.058868N-9.752014E&#x27;, &#x27;4.059014N-9.759348E&#x27;, &#x27;4.059486N-9.711928E&#x27;,
       &#x27;4.059995N-9.755237E&#x27;, &#x27;4.060816N-9.773042E&#x27;, &#x27;4.061585N-9.744609E&#x27;,
       &#x27;4.062778N-9.705333E&#x27;, &#x27;4.062903N-9.717026E&#x27;, &#x27;4.064425N-9.761904E&#x27;,
       &#x27;4.065399N-9.711476E&#x27;, &#x27;4.066549N-9.795621E&#x27;, &#x27;4.067820N-9.720067E&#x27;,
       &#x27;4.068528N-9.726056E&#x27;, &#x27;4.069079N-9.713870E&#x27;, &#x27;4.071390N-9.727304E&#x27;,
       &#x27;4.072442N-9.739396E&#x27;, &#x27;4.072503N-9.771625E&#x27;, &#x27;4.074162N-9.717861E&#x27;,
       &#x27;4.074764N-9.753625E&#x27;, &#x27;4.075098N-9.719528E&#x27;, &#x27;4.075836N-9.783931E&#x27;,
       &#x27;4.076554N-9.759058E&#x27;, &#x27;4.078069N-9.720598E&#x27;, &#x27;4.078309N-9.751204E&#x27;,
       &#x27;4.079211N-9.793847E&#x27;, &#x27;4.079299N-9.747812E&#x27;, &#x27;4.079652N-9.763472E&#x27;,
       &#x27;4.080070N-9.789737E&#x27;, &#x27;4.080399N-9.753111E&#x27;, &#x27;4.081654N-9.761180E&#x27;,
       &#x27;4.082815N-9.790491E&#x27;, &#x27;4.083040N-9.782281E&#x27;, &#x27;4.083986N-9.756718E&#x27;,
       &#x27;4.084496N-9.740917E&#x27;, &#x27;4.084732N-9.745625E&#x27;, &#x27;4.085795N-9.784833E&#x27;,
       &#x27;4.086056N-9.752500E&#x27;, &#x27;4.086283N-9.759477E&#x27;, &#x27;4.086545N-9.797375E&#x27;,
       &#x27;4.088385N-9.755778E&#x27;, &#x27;4.089034N-9.734926E&#x27;, &#x27;4.089819N-9.752833E&#x27;,
       &#x27;4.090565N-9.765189E&#x27;, &#x27;4.091611N-9.732743E&#x27;, &#x27;4.095631N-9.742507E&#x27;],
      dtype=&#x27;&lt;U19&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>sublink_id</span></div><div class='xr-var-dims'>(sublink_id)</div><div class='xr-var-dtype'>&lt;U3</div><div class='xr-var-preview xr-preview'>&#x27;0_0&#x27; &#x27;0_1&#x27; &#x27;1_0&#x27; &#x27;1_1&#x27; &#x27;2_0&#x27; &#x27;2_1&#x27;</div><input id='attrs-46449e33-e579-4aa9-8af5-735c6ddbe23e' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-46449e33-e579-4aa9-8af5-735c6ddbe23e' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-593530ff-b160-4e3d-9d1a-d1fba72ca9ea' class='xr-var-data-in' type='checkbox'><label for='data-593530ff-b160-4e3d-9d1a-d1fba72ca9ea' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>sublink_identifier</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;0_0&#x27;, &#x27;0_1&#x27;, &#x27;1_0&#x27;, &#x27;1_1&#x27;, &#x27;2_0&#x27;, &#x27;2_1&#x27;], dtype=&#x27;&lt;U3&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>time</span></div><div class='xr-var-dims'>(time)</div><div class='xr-var-dtype'>datetime64[ns]</div><div class='xr-var-preview xr-preview'>2019-07-01T00:05:00 ... 2019-07-...</div><input id='attrs-f39623b7-96cd-4709-98f1-b6fb7795dcb5' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-f39623b7-96cd-4709-98f1-b6fb7795dcb5' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-d0bb4787-8ea5-48dd-9721-63f0fa69cf9a' class='xr-var-data-in' type='checkbox'><label for='data-d0bb4787-8ea5-48dd-9721-63f0fa69cf9a' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>time_utc</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;2019-07-01T00:05:00.000000000&#x27;, &#x27;2019-07-01T00:20:00.000000000&#x27;,
       &#x27;2019-07-01T00:35:00.000000000&#x27;, ..., &#x27;2019-07-31T23:20:00.000000000&#x27;,
       &#x27;2019-07-31T23:35:00.000000000&#x27;, &#x27;2019-07-31T23:50:00.000000000&#x27;],
      shape=(2964,), dtype=&#x27;datetime64[ns]&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>frequency</span></div><div class='xr-var-dims'>(cml_id, sublink_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>1.505e+04 1.456e+04 nan ... nan nan</div><input id='attrs-cb20cd2a-b8ff-4e49-8eae-b562b6a6dd98' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-cb20cd2a-b8ff-4e49-8eae-b562b6a6dd98' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-888bc4a6-0403-45f3-a338-2dcc26c813cf' class='xr-var-data-in' type='checkbox'><label for='data-888bc4a6-0403-45f3-a338-2dcc26c813cf' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>MHz</dd><dt><span>long_name :</span></dt><dd>sublink_frequency</dd></dl></div><div class='xr-var-data'><pre>array([[15047., 14557.,    nan,    nan,    nan,    nan],
       [12765., 13031.,    nan,    nan,    nan,    nan],
       [18765., 17755.,    nan,    nan,    nan,    nan],
       [14907., 14417.,    nan,    nan,    nan,    nan],
       [17728., 18738.,    nan,    nan,    nan,    nan],
       [14417., 14907.,    nan,    nan,    nan,    nan],
       [14935., 14445.,    nan,    nan,    nan,    nan],
       [14529., 15019.,    nan,    nan,    nan,    nan],
       [14935., 14445.,    nan,    nan,    nan,    nan],
       [14473., 14963.,    nan,    nan,    nan,    nan],
       [17755., 18765.,    nan,    nan,    nan,    nan],
       [ 8335.,  8454.,    nan,    nan,    nan,    nan],
       [14935., 14445.,    nan,    nan,    nan,    nan],
       [15019., 14529.,    nan,    nan,    nan,    nan],
       [14991., 14501.,    nan,    nan,    nan,    nan],
       [14501., 14991.,    nan,    nan,    nan,    nan],
       [14557., 15047.,    nan,    nan,    nan,    nan],
       [14557., 15047.,    nan,    nan,    nan,    nan],
       [15103., 14613.,    nan,    nan,    nan,    nan],
       [14417., 14907.,    nan,    nan,    nan,    nan],
...
       [14445., 14935.,    nan,    nan,    nan,    nan],
       [14529., 15019.,    nan,    nan,    nan,    nan],
       [17838., 18848.,    nan,    nan,    nan,    nan],
       [ 8468.,  8349.,    nan,    nan,    nan,    nan],
       [14417., 14907.,    nan,    nan,    nan,    nan],
       [14935., 14445.,    nan,    nan,    nan,    nan],
       [14991., 14501.,    nan,    nan,    nan,    nan],
       [14417., 14907.,    nan,    nan,    nan,    nan],
       [ 8426.,  8307.,    nan,    nan,    nan,    nan],
       [14557., 15047.,    nan,    nan,    nan,    nan],
       [14963., 14473.,    nan,    nan,    nan,    nan],
       [ 8468.,  8349.,    nan,    nan,    nan,    nan],
       [14557., 15047.,    nan,    nan,    nan,    nan],
       [14991., 14501.,    nan,    nan,    nan,    nan],
       [14585., 15075.,    nan,    nan,    nan,    nan],
       [17728., 18738.,    nan,    nan,    nan,    nan],
       [14529., 15019.,    nan,    nan,    nan,    nan],
       [14991., 14501.,    nan,    nan,    nan,    nan],
       [14585., 15075.,    nan,    nan,    nan,    nan],
       [14501., 14991.,    nan,    nan,    nan,    nan]])</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>site_0_lat</span></div><div class='xr-var-dims'>(cml_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>3.993 3.993 3.997 ... 4.092 4.094</div><input id='attrs-02b7549c-ba53-4816-8fb0-23a45d17b2ce' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-02b7549c-ba53-4816-8fb0-23a45d17b2ce' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-8ce4755e-5de6-4cc4-b2d2-b0d5413770fd' class='xr-var-data-in' type='checkbox'><label for='data-8ce4755e-5de6-4cc4-b2d2-b0d5413770fd' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees_in_WGS84_projection</dd><dt><span>long_name :</span></dt><dd>site_0_latitude</dd></dl></div><div class='xr-var-data'><pre>array([3.992722, 3.992722, 3.997361, 4.002553, 4.003512, 4.004194,
       4.01775 , 4.029   , 4.009639, 4.029   , 4.015972, 4.029   ,
       4.015972, 4.023444, 4.015972, 4.029   , 4.014417, 4.029   ,
       4.015972, 4.029381, 4.0194  , 4.023167, 4.022056, 4.015972,
       4.029381, 4.029   , 4.022139, 4.015972, 4.029381, 4.029381,
       4.040819, 4.029083, 4.029381, 4.029083, 4.029381, 4.029381,
       4.040819, 4.032   , 4.029   , 4.032433, 4.033028, 4.040819,
       4.029381, 4.033886, 4.029   , 4.040083, 4.040819, 4.040819,
       4.040886, 4.042306, 4.041417, 4.03875 , 4.040819, 4.029   ,
       4.040819, 4.056559, 4.040886, 4.04244 , 4.041417, 4.043194,
       4.041694, 4.040886, 4.04642 , 4.044694, 4.049556, 4.051333,
       4.050192, 4.052028, 4.052444, 4.053667, 4.053694, 4.053667,
       4.053667, 4.0585  , 4.058056, 4.053667, 4.060028, 4.053667,
       4.0585  , 4.053667, 4.06425 , 4.053667, 4.053667, 4.060333,
       4.053667, 4.0585  , 4.059611, 4.059583, 4.06425 , 4.066322,
       4.063917, 4.065848, 4.06425 , 4.065667, 4.071278, 4.071389,
       4.072222, 4.071639, 4.06425 , 4.074778, 4.070306, 4.0817  ,
       4.074778, 4.079889, 4.081867, 4.0817  , 4.085936, 4.085936,
       4.0817  , 4.085936, 4.081441, 4.0817  , 4.0817  , 4.074778,
       4.085936, 4.085936, 4.0817  , 4.074778, 4.085936, 4.0817  ,
       4.085936, 4.08679 , 4.074778, 4.08663 , 4.091944, 4.09393 ])</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>site_0_lon</span></div><div class='xr-var-dims'>(cml_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>9.787 9.787 9.764 ... 9.729 9.742</div><input id='attrs-949d0ddf-5c8f-4db0-ac0e-48583e29c654' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-949d0ddf-5c8f-4db0-ac0e-48583e29c654' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-6ccd71f8-376c-4eea-b7d7-4a886137310d' class='xr-var-data-in' type='checkbox'><label for='data-6ccd71f8-376c-4eea-b7d7-4a886137310d' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees_in_WGS84_projection</dd><dt><span>long_name :</span></dt><dd>site_0_longitude</dd></dl></div><div class='xr-var-data'><pre>array([9.787167, 9.787167, 9.763806, 9.745083, 9.76732 , 9.799472,
       9.705944, 9.767833, 9.741417, 9.767833, 9.738528, 9.767833,
       9.738528, 9.727083, 9.738528, 9.767833, 9.744694, 9.767833,
       9.738528, 9.696744, 9.743889, 9.792   , 9.67025 , 9.738528,
       9.696744, 9.767833, 9.737194, 9.738528, 9.696744, 9.696744,
       9.733028, 9.701944, 9.696744, 9.701944, 9.696744, 9.696744,
       9.733028, 9.71564 , 9.767833, 9.691575, 9.774333, 9.733028,
       9.696744, 9.683883, 9.767833, 9.706106, 9.733028, 9.733028,
       9.699006, 9.774   , 9.686417, 9.762056, 9.733028, 9.767833,
       9.733028, 9.702978, 9.699006, 9.704083, 9.686417, 9.707889,
       9.728389, 9.699006, 9.71598 , 9.703528, 9.698333, 9.706861,
       9.771911, 9.741306, 9.702389, 9.750917, 9.779361, 9.750917,
       9.750917, 9.768444, 9.738694, 9.750917, 9.726194, 9.750917,
       9.768444, 9.750917, 9.714664, 9.750917, 9.750917, 9.708444,
       9.750917, 9.768444, 9.743528, 9.704333, 9.714664, 9.759558,
       9.710083, 9.79152 , 9.714664, 9.722972, 9.714869, 9.729139,
       9.736111, 9.76925 , 9.714664, 9.761667, 9.719639, 9.786083,
       9.761667, 9.719417, 9.756825, 9.786083, 9.752944, 9.752944,
       9.786083, 9.752944, 9.765535, 9.786083, 9.786083, 9.761667,
       9.752944, 9.752944, 9.786083, 9.761667, 9.752944, 9.786083,
       9.752944, 9.73381 , 9.761667, 9.76601 , 9.729444, 9.74168 ])</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>site_1_lat</span></div><div class='xr-var-dims'>(cml_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>3.977 3.979 3.997 ... 4.091 4.097</div><input id='attrs-798fcbf1-32a2-42d5-ac23-70bafba43aa8' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-798fcbf1-32a2-42d5-ac23-70bafba43aa8' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-b8368c0f-d2fd-4f57-85a4-71ffb97ef4fd' class='xr-var-data-in' type='checkbox'><label for='data-b8368c0f-d2fd-4f57-85a4-71ffb97ef4fd' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees in WGS84 projection</dd><dt><span>long_name :</span></dt><dd>site_1_latitude</dd></dl></div><div class='xr-var-data'><pre>array([3.97665 , 3.97866 , 3.99663 , 4.003231, 4.0105  , 4.012278,
       4.008306, 3.997361, 4.020194, 4.002553, 4.01734 , 4.004472,
       4.017917, 4.01048 , 4.0195  , 4.008442, 4.023111, 4.0105  ,
       4.023889, 4.0115  , 4.023111, 4.019889, 4.02603 , 4.03279 ,
       4.02012 , 4.02125 , 4.0284  , 4.035278, 4.02238 , 4.022917,
       4.01658 , 4.028333, 4.029444, 4.032028, 4.032433, 4.033417,
       4.023444, 4.03312 , 4.037361, 4.035333, 4.03527 , 4.028583,
       4.040886, 4.037472, 4.046556, 4.036926, 4.037722, 4.038342,
       4.03931 , 4.039278, 4.040697, 4.043386, 4.041694, 4.053694,
       4.043778, 4.028444, 4.04425 , 4.043194, 4.04625 , 4.044661,
       4.0475  , 4.048586, 4.048586, 4.051333, 4.04675 , 4.0465  ,
       4.049658, 4.048272, 4.04825 , 4.047389, 4.050472, 4.05525 ,
       4.058167, 4.053639, 4.054186, 4.059611, 4.053667, 4.06025 ,
       4.056417, 4.062806, 4.053242, 4.064069, 4.064361, 4.058638,
       4.066322, 4.063131, 4.06356 , 4.065972, 4.061556, 4.062528,
       4.06688 , 4.06725 , 4.07139 , 4.071389, 4.06688 , 4.07139 ,
       4.072661, 4.073367, 4.084075, 4.07475 , 4.079889, 4.069972,
       4.07833 , 4.07625 , 4.07475 , 4.076722, 4.072661, 4.073367,
       4.07844 , 4.074861, 4.081867, 4.08393 , 4.08438 , 4.093194,
       4.083056, 4.083528, 4.089889, 4.097333, 4.08663 , 4.091389,
       4.090833, 4.091278, 4.104861, 4.0945  , 4.091278, 4.097333])</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>site_1_lon</span></div><div class='xr-var-dims'>(cml_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>9.792 9.816 9.759 ... 9.736 9.743</div><input id='attrs-dbae5718-3659-4193-aa6c-ab803613fc0e' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-dbae5718-3659-4193-aa6c-ab803613fc0e' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-c726c202-cd7c-42c1-969c-e45d1bacdb22' class='xr-var-data-in' type='checkbox'><label for='data-c726c202-cd7c-42c1-969c-e45d1bacdb22' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>degrees in WGS84 projection</dd><dt><span>long_name :</span></dt><dd>site_1_longitude</dd></dl></div><div class='xr-var-data'><pre>array([9.791866, 9.81613 , 9.75885 , 9.748639, 9.767719, 9.778111,
       9.701194, 9.763806, 9.723611, 9.745083, 9.73456 , 9.762056,
       9.768083, 9.72629 , 9.757556, 9.756817, 9.748472, 9.767719,
       9.780278, 9.721083, 9.748472, 9.805583, 9.69027 , 9.72802 ,
       9.69921 , 9.77399 , 9.741992, 9.73325 , 9.70976 , 9.694556,
       9.72684 , 9.705139, 9.686417, 9.709194, 9.691575, 9.699417,
       9.727083, 9.71203 , 9.755167, 9.691889, 9.77026 , 9.725667,
       9.699006, 9.688056, 9.766222, 9.703794, 9.711917, 9.741011,
       9.70265 , 9.7795  , 9.689827, 9.754583, 9.728389, 9.779361,
       9.747639, 9.73025 , 9.69725 , 9.707889, 9.688194, 9.700739,
       9.72575 , 9.721043, 9.721043, 9.706861, 9.698917, 9.708472,
       9.777253, 9.739644, 9.704556, 9.756833, 9.797806, 9.775889,
       9.754444, 9.767556, 9.745611, 9.743528, 9.750917, 9.734028,
       9.763167, 9.786861, 9.720853, 9.75311 , 9.767778, 9.715412,
       9.759558, 9.777639, 9.74569 , 9.706333, 9.719389, 9.76425 ,
       9.71287 , 9.799722, 9.72547 , 9.729139, 9.71287 , 9.72547 ,
       9.742681, 9.774   , 9.721058, 9.745583, 9.719417, 9.781778,
       9.75645 , 9.721778, 9.745583, 9.801611, 9.742681, 9.774   ,
       9.79339 , 9.753278, 9.756825, 9.7949  , 9.77848 , 9.751769,
       9.728889, 9.738306, 9.783583, 9.743333, 9.76601 , 9.808667,
       9.758611, 9.736042, 9.744   , 9.764367, 9.736042, 9.743333])</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>transmitter</span></div><div class='xr-var-dims'>(cml_id, sublink_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.0 1.0 nan nan ... nan nan nan nan</div><input id='attrs-058e5a5d-0dcd-4e0b-af49-19f2252a8349' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-058e5a5d-0dcd-4e0b-af49-19f2252a8349' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-83f2cdbc-e08f-44f9-81f4-089a0913b7c2' class='xr-var-data-in' type='checkbox'><label for='data-83f2cdbc-e08f-44f9-81f4-089a0913b7c2' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>transmitter_site_identifier</dd></dl></div><div class='xr-var-data'><pre>array([[ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
...
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan],
       [ 0.,  1., nan, nan, nan, nan]])</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>length</span></div><div class='xr-var-dims'>(cml_id)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>1.852e+03 3.573e+03 ... 736.0 419.0</div><input id='attrs-b2556660-c27d-4a6b-b3dc-a4a175b5dad7' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-b2556660-c27d-4a6b-b3dc-a4a175b5dad7' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-05436fd5-93e8-4092-bc1e-a339c56ed5e7' class='xr-var-data-in' type='checkbox'><label for='data-05436fd5-93e8-4092-bc1e-a339c56ed5e7' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>m</dd><dt><span>long_name :</span></dt><dd>distance_between_pair_of_antennas</dd></dl></div><div class='xr-var-data'><pre>array([1852., 3573.,  556.,  402.,  774., 2535., 1170., 3527., 2296.,
       3865.,  466., 2787., 3289., 1436., 2149., 2582., 1049., 2046.,
       4718., 3349.,  654., 1551., 2266., 2195., 1060., 1096.,  874.,
       2214., 1640.,  755., 2767.,  364., 1147.,  868.,  666.,  536.,
       2032.,  420., 1683.,  323.,  516., 1581., 1297.,  610., 1950.,
        433., 2369.,  928.,  441.,  697.,  387.,  975.,  524., 3016.,
       1655., 4340.,  420.,  431.,  570.,  810.,  706., 2591.,  611.,
        822.,  317.,  564.,  596.,  454.,  522.,  956., 2079., 2778.,
        633.,  546.,  879., 1051., 2834., 2012.,  630., 4117., 1398.,
       1176., 2214.,  796., 1697., 1142.,  498.,  741.,  603.,  669.,
        451.,  924., 1436.,  932.,  535.,  407.,  731.,  561., 2304.,
       1786., 1060., 1382.,  700.,  480., 1476., 1810., 1858., 2720.,
        888., 1225.,  968., 1010.,  895., 2314., 2690., 1647.,  947.,
       3219., 1453., 2727.,  830.,  555., 3862.,  889.,  736.,  419.])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-b6976de3-ed9f-438d-b907-4070ae2e50a9' class='xr-section-summary-in' type='checkbox'  checked><label for='section-b6976de3-ed9f-438d-b907-4070ae2e50a9' class='xr-section-summary' >Data variables: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>tsl_max-rsl_max</span></div><div class='xr-var-dims'>(cml_id, sublink_id, time)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>57.6 57.8 57.9 58.0 ... nan nan nan</div><input id='attrs-be23aa03-1229-4a34-9203-063f58a78f24' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-be23aa03-1229-4a34-9203-063f58a78f24' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-157e4118-f891-42be-a1f1-fbde95a65b5e' class='xr-var-data-in' type='checkbox'><label for='data-157e4118-f891-42be-a1f1-fbde95a65b5e' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>tsl_max-rsl_max_baseline</dd><dt><span>method :</span></dt><dd>get_bl_as_last_dry_step</dd></dl></div><div class='xr-var-data'><pre>array([[[ 57.6,  57.8,  57.9, ...,  58. ,  57.9,  58. ],
        [ 56.2,  56.3,  56.3, ...,  56.2,  56.2,  56.2],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 62.3,  62.2,  62.2, ...,  58.7,  58.7,  58.7],
        [ 61.9,  62.7,  62.7, ..., 114.6, 114.6, 114.6],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 46.4,  46.3,  46.4, ...,  46.4,  46.5,  46.5],
        [ 45.7,  45.7,  45.6, ...,  45.5,  45.6,  45.6],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
...
        [ 49.5,  49.5,  49.5, ...,  49.5,  49.5,  49.5],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 53.8,  53.8,  53.8, ...,  54.1,  54.1,  54.2],
        [ 53.7,  53.7,  53.7, ...,  53.9,  53.9,  54. ],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 46.8,  46.8,  46.8, ...,  47.2,  47.1,  47.1],
        [ 46.4,  46.4,  46.4, ...,  47. ,  47. ,  46.9],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]]],
      shape=(126, 6, 2964))</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>tsl_min-rsl_min</span></div><div class='xr-var-dims'>(cml_id, sublink_id, time)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>58.8 58.3 58.3 58.4 ... nan nan nan</div><input id='attrs-a3f7bc9a-096f-4a93-a155-0823dd4f6571' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-a3f7bc9a-096f-4a93-a155-0823dd4f6571' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-def14e60-0f2d-40d9-8c03-dd0238a1659d' class='xr-var-data-in' type='checkbox'><label for='data-def14e60-0f2d-40d9-8c03-dd0238a1659d' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>tsl_min-rsl_min_baseline</dd><dt><span>method :</span></dt><dd>get_bl_as_last_dry_step</dd></dl></div><div class='xr-var-data'><pre>array([[[ 58.8,  58.3,  58.3, ...,  58.3,  58.3,  58.3],
        [ 57.2,  56.8,  56.7, ...,  56.7,  56.5,  56.7],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 62.8,  63.1,  63.2, ...,  60.8,  60.8,  60.8],
        [ 63.9,  63.7,  63.7, ..., 114.8, 114.8, 114.8],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 46.6,  46.6,  46.7, ...,  47. ,  46.8,  46.8],
        [ 45.9,  45.9,  45.8, ...,  46.2,  45.9,  45.9],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
...
        [ 49.7,  49.6,  49.6, ...,  49.7,  49.7,  49.7],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 54. ,  54. ,  54. , ...,  54.6,  54.6,  54.5],
        [ 53.9,  53.9,  53.9, ...,  54.6,  54.6,  54.3],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]],
&#10;       [[ 47. ,  47. ,  47. , ...,  47.8,  47.7,  47.7],
        [ 46.6,  46.6,  46.6, ...,  47.4,  47.4,  47.3],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan],
        [  nan,   nan,   nan, ...,   nan,   nan,   nan]]],
      shape=(126, 6, 2964))</pre></div></li></ul></div></li></ul></div></div>

![](11_baseline_files/figure-commonmark/cell-9-output-1.png)

### Sample data generation

To help with development and illustration, we will save the generated
wet classification as a sample, as we will need sample data from
different processing steps. This sample data is only used for
illustration purposes. Additionally, during dry periods, the difference
between the minimum, average and maximum signals should be small. For
simplicity, we will only save the baseline computed from the average
signal.

``` python
var = "baseline"
baseline = get_bl_as_last_dry_step((cml["tsl_avg"] - cml["rsl_avg"]).to_dataset(name=var), wet)
baseline[var].to_netcdf(get_cml_sample_fp("baseline"), encoding={var: {"zlib": True, "complevel": 5}})
```
