The FZ filter seems to work on small datasets such as Amsterdam and Götheborg dataset. For two other, larger datasets the following behaviour was observed:
Dataset 1 in hourly resolution gives the following error:

Strangely, the same Data in 5 min resolution works.
Dataset 2 in hourly resolution gives the same error.
It seems that after adding the private function of nbrs_not_nan the issue arose. When resolving the issue pay attention to:
1.) the private function uses nr_nbrs_not_nan = (ds_pws.rainfall.sel(id=neighbor_ids).**notnull**().sum(dim="id")) while the old version uses **.isnull()**
2.) the new private function uses the length of the time dim to create an array, which might in some cases cause the "index out of bounds problem"
The FZ filter seems to work on small datasets such as Amsterdam and Götheborg dataset. For two other, larger datasets the following behaviour was observed:
Dataset 1 in hourly resolution gives the following error:

Strangely, the same Data in 5 min resolution works.
Dataset 2 in hourly resolution gives the same error.
It seems that after adding the private function of nbrs_not_nan the issue arose. When resolving the issue pay attention to:
1.) the private function uses
nr_nbrs_not_nan = (ds_pws.rainfall.sel(id=neighbor_ids).**notnull**().sum(dim="id"))while the old version uses**.isnull()**2.) the new private function uses the length of the time dim to create an array, which might in some cases cause the "index out of bounds problem"