deepsensor 0.4.0__tar.gz → 0.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. {deepsensor-0.4.0 → deepsensor-0.4.2}/PKG-INFO +2 -2
  2. {deepsensor-0.4.0 → deepsensor-0.4.2}/README.md +1 -1
  3. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/model/model.py +7 -5
  4. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/model/pred.py +2 -2
  5. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/plot.py +4 -0
  6. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor.egg-info/PKG-INFO +2 -2
  7. {deepsensor-0.4.0 → deepsensor-0.4.2}/setup.cfg +1 -1
  8. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_model.py +2 -2
  9. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/__init__.py +0 -0
  10. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/active_learning/__init__.py +0 -0
  11. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/active_learning/acquisition_fns.py +0 -0
  12. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/active_learning/algorithms.py +0 -0
  13. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/config.py +0 -0
  14. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/data/__init__.py +0 -0
  15. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/data/loader.py +0 -0
  16. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/data/processor.py +0 -0
  17. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/data/sources.py +0 -0
  18. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/data/task.py +0 -0
  19. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/data/utils.py +0 -0
  20. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/errors.py +0 -0
  21. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/eval/__init__.py +0 -0
  22. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/eval/metrics.py +0 -0
  23. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/model/__init__.py +0 -0
  24. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/model/convnp.py +0 -0
  25. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/model/defaults.py +0 -0
  26. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/model/nps.py +0 -0
  27. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/py.typed +0 -0
  28. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/tensorflow/__init__.py +0 -0
  29. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/torch/__init__.py +0 -0
  30. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/train/__init__.py +0 -0
  31. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor/train/train.py +0 -0
  32. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor.egg-info/SOURCES.txt +0 -0
  33. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor.egg-info/dependency_links.txt +0 -0
  34. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor.egg-info/not-zip-safe +0 -0
  35. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor.egg-info/requires.txt +0 -0
  36. {deepsensor-0.4.0 → deepsensor-0.4.2}/deepsensor.egg-info/top_level.txt +0 -0
  37. {deepsensor-0.4.0 → deepsensor-0.4.2}/pyproject.toml +0 -0
  38. {deepsensor-0.4.0 → deepsensor-0.4.2}/setup.py +0 -0
  39. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/__init__.py +0 -0
  40. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_active_learning.py +0 -0
  41. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_data_processor.py +0 -0
  42. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_plotting.py +0 -0
  43. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_task.py +0 -0
  44. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_task_loader.py +0 -0
  45. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/test_training.py +0 -0
  46. {deepsensor-0.4.0 → deepsensor-0.4.2}/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deepsensor
3
- Version: 0.4.0
3
+ Version: 0.4.2
4
4
  Summary: A Python package for modelling xarray and pandas data with neural processes.
5
5
  Home-page: https://github.com/alan-turing-institute/deepsensor
6
6
  Author: Tom R. Andersson
@@ -44,7 +44,7 @@ data with neural processes</p>
44
44
 
45
45
  -----------
46
46
 
47
- [![release](https://img.shields.io/badge/release-v0.4.0-green?logo=github)](https://github.com/alan-turing-institute/deepsensor/releases)
47
+ [![release](https://img.shields.io/badge/release-v0.4.2-green?logo=github)](https://github.com/alan-turing-institute/deepsensor/releases)
48
48
  [![Latest Docs](https://img.shields.io/badge/docs-latest-blue.svg)](https://alan-turing-institute.github.io/deepsensor/)
49
49
  ![Tests](https://github.com/alan-turing-institute/deepsensor/actions/workflows/tests.yml/badge.svg)
50
50
  [![Coverage Status](https://coveralls.io/repos/github/alan-turing-institute/deepsensor/badge.svg?branch=main)](https://coveralls.io/github/alan-turing-institute/deepsensor?branch=main)
@@ -11,7 +11,7 @@ data with neural processes</p>
11
11
 
12
12
  -----------
13
13
 
14
- [![release](https://img.shields.io/badge/release-v0.4.0-green?logo=github)](https://github.com/alan-turing-institute/deepsensor/releases)
14
+ [![release](https://img.shields.io/badge/release-v0.4.2-green?logo=github)](https://github.com/alan-turing-institute/deepsensor/releases)
15
15
  [![Latest Docs](https://img.shields.io/badge/docs-latest-blue.svg)](https://alan-turing-institute.github.io/deepsensor/)
16
16
  ![Tests](https://github.com/alan-turing-institute/deepsensor/actions/workflows/tests.yml/badge.svg)
17
17
  [![Coverage Status](https://coveralls.io/repos/github/alan-turing-institute/deepsensor/badge.svg?branch=main)](https://coveralls.io/github/alan-turing-institute/deepsensor?branch=main)
@@ -652,7 +652,7 @@ class DeepSensorModel(ProbabilisticModel):
652
652
  )
653
653
 
654
654
  if forecasting_mode:
655
- pred = add_valid_time_coord_to_pred(pred)
655
+ pred = add_valid_time_coord_to_pred_and_move_time_dims(pred)
656
656
 
657
657
  if verbose:
658
658
  dur = time.time() - tic
@@ -661,10 +661,11 @@ class DeepSensorModel(ProbabilisticModel):
661
661
  return pred
662
662
 
663
663
 
664
- def add_valid_time_coord_to_pred(pred: Prediction) -> Prediction:
664
+ def add_valid_time_coord_to_pred_and_move_time_dims(pred: Prediction) -> Prediction:
665
665
  """
666
666
  Add a valid time coordinate "time" to a Prediction object based on the
667
- initialisation times "init_time" and lead times "lead_time".
667
+ initialisation times "init_time" and lead times "lead_time", and
668
+ reorder the time dims from ("lead_time", "init_time") to ("init_time", "lead_time").
668
669
 
669
670
  Args:
670
671
  pred (:class:`~.model.pred.Prediction`):
@@ -678,13 +679,14 @@ def add_valid_time_coord_to_pred(pred: Prediction) -> Prediction:
678
679
  if isinstance(pred[var_ID], pd.DataFrame):
679
680
  x = pred[var_ID].reset_index()
680
681
  pred[var_ID]["time"] = (x["lead_time"] + x["init_time"]).values
681
- print(f"{x}")
682
- print(f"{x.dtypes}")
682
+ pred[var_ID] = pred[var_ID].swaplevel("init_time", "lead_time")
683
+ pred[var_ID] = pred[var_ID].sort_index()
683
684
  elif isinstance(pred[var_ID], xr.Dataset):
684
685
  x = pred[var_ID]
685
686
  pred[var_ID] = pred[var_ID].assign_coords(
686
687
  time=x["lead_time"] + x["init_time"]
687
688
  )
689
+ pred[var_ID] = pred[var_ID].transpose("init_time", "lead_time", ...)
688
690
  else:
689
691
  raise ValueError(f"Unsupported prediction type {type(pred[var_ID])}.")
690
692
  return pred
@@ -205,7 +205,7 @@ class Prediction(dict):
205
205
  index = (lead_times[i], date)
206
206
  else:
207
207
  index = date
208
- self[var_ID][prediction_parameter].loc[index] = pred
208
+ self[var_ID].loc[index, prediction_parameter] = pred
209
209
  elif prediction_parameter == "samples":
210
210
  assert len(data.shape) == 3, (
211
211
  f"If prediction_parameter is 'samples', and mode is 'off-grid', data must"
@@ -219,7 +219,7 @@ class Prediction(dict):
219
219
  index = (lead_times[i], date)
220
220
  else:
221
221
  index = date
222
- self[var_ID][f"sample_{sample_i}"].loc[index] = pred
222
+ self[var_ID].loc[index, f"sample_{sample_i}"] = pred
223
223
 
224
224
 
225
225
  def create_empty_spatiotemporal_xarray(
@@ -954,6 +954,8 @@ def prediction(
954
954
  ax = axes[row_i, col_i]
955
955
 
956
956
  if pred.mode == "on-grid":
957
+ if "init_time" in pred[0].indexes:
958
+ raise ValueError("Plotting forecasts not currently supported.")
957
959
  if param == "std":
958
960
  vmin = 0
959
961
  else:
@@ -1000,6 +1002,8 @@ def prediction(
1000
1002
  # )
1001
1003
 
1002
1004
  elif pred.mode == "off-grid":
1005
+ if "init_time" in pred[0].index.names:
1006
+ raise ValueError("Plotting forecasts not currently supported.")
1003
1007
  import seaborn as sns
1004
1008
 
1005
1009
  hue = (
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deepsensor
3
- Version: 0.4.0
3
+ Version: 0.4.2
4
4
  Summary: A Python package for modelling xarray and pandas data with neural processes.
5
5
  Home-page: https://github.com/alan-turing-institute/deepsensor
6
6
  Author: Tom R. Andersson
@@ -44,7 +44,7 @@ data with neural processes</p>
44
44
 
45
45
  -----------
46
46
 
47
- [![release](https://img.shields.io/badge/release-v0.4.0-green?logo=github)](https://github.com/alan-turing-institute/deepsensor/releases)
47
+ [![release](https://img.shields.io/badge/release-v0.4.2-green?logo=github)](https://github.com/alan-turing-institute/deepsensor/releases)
48
48
  [![Latest Docs](https://img.shields.io/badge/docs-latest-blue.svg)](https://alan-turing-institute.github.io/deepsensor/)
49
49
  ![Tests](https://github.com/alan-turing-institute/deepsensor/actions/workflows/tests.yml/badge.svg)
50
50
  [![Coverage Status](https://coveralls.io/repos/github/alan-turing-institute/deepsensor/badge.svg?branch=main)](https://coveralls.io/github/alan-turing-institute/deepsensor?branch=main)
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = deepsensor
3
- version = 0.4.0
3
+ version = 0.4.2
4
4
  author = Tom R. Andersson
5
5
  author_email = tomandersson3@gmail.com
6
6
  description = A Python package for modelling xarray and pandas data with neural processes.
@@ -659,7 +659,7 @@ class TestModel(unittest.TestCase):
659
659
  )
660
660
 
661
661
  expected_valid_times = np.array(
662
- expected_lead_times[:, None] + expected_init_times[None, :]
662
+ expected_init_times[:, None] + expected_lead_times[None, :]
663
663
  )
664
664
 
665
665
  tl = TaskLoader(
@@ -690,8 +690,8 @@ class TestModel(unittest.TestCase):
690
690
  errors = compute_errors(pred, self.da.to_dataset())
691
691
  for var_ID in errors.keys():
692
692
  assert tuple(errors[var_ID].dims) == (
693
- "lead_time",
694
693
  "init_time",
694
+ "lead_time",
695
695
  "x1",
696
696
  "x2",
697
697
  )
File without changes
File without changes
File without changes
File without changes