power-grid-model-io 1.3.5__py3-none-any.whl → 1.3.7__py3-none-any.whl

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.

Potentially problematic release.


This version of power-grid-model-io might be problematic. Click here for more details.

Files changed (27) hide show
  1. power_grid_model_io/converters/__init__.py +2 -0
  2. power_grid_model_io/converters/base_converter.py +10 -6
  3. power_grid_model_io/converters/pandapower_converter.py +158 -120
  4. power_grid_model_io/converters/pgm_json_converter.py +22 -17
  5. power_grid_model_io/converters/tabular_converter.py +28 -22
  6. power_grid_model_io/converters/vision_excel_converter.py +3 -3
  7. power_grid_model_io/data_stores/excel_file_store.py +5 -5
  8. power_grid_model_io/data_stores/json_file_store.py +1 -1
  9. power_grid_model_io/data_stores/vision_excel_file_store.py +1 -0
  10. power_grid_model_io/data_types/__init__.py +2 -0
  11. power_grid_model_io/data_types/_data_types.py +2 -2
  12. power_grid_model_io/data_types/tabular_data.py +7 -7
  13. power_grid_model_io/functions/__init__.py +12 -0
  14. power_grid_model_io/functions/filters.py +2 -2
  15. power_grid_model_io/mappings/tabular_mapping.py +4 -3
  16. power_grid_model_io/mappings/value_mapping.py +3 -2
  17. power_grid_model_io/utils/auto_id.py +3 -2
  18. power_grid_model_io/utils/dict.py +1 -0
  19. power_grid_model_io/utils/download.py +4 -4
  20. power_grid_model_io/utils/excel_ambiguity_checker.py +3 -3
  21. power_grid_model_io/utils/modules.py +1 -0
  22. power_grid_model_io/utils/uuid_excel_cvtr.py +3 -3
  23. {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/METADATA +2 -1
  24. {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/RECORD +27 -27
  25. {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/WHEEL +0 -0
  26. {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/licenses/LICENSE +0 -0
  27. {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/top_level.txt +0 -0
@@ -8,3 +8,5 @@ Converters
8
8
  from power_grid_model_io.converters.pandapower_converter import PandaPowerConverter
9
9
  from power_grid_model_io.converters.pgm_json_converter import PgmJsonConverter
10
10
  from power_grid_model_io.converters.vision_excel_converter import VisionExcelConverter
11
+
12
+ __all__ = ["PandaPowerConverter", "PgmJsonConverter", "VisionExcelConverter"]
@@ -4,11 +4,13 @@
4
4
  """
5
5
  Abstract converter class
6
6
  """
7
+
7
8
  import logging
8
9
  from abc import ABC, abstractmethod
9
10
  from typing import Generic, Optional, Tuple, TypeVar
10
11
 
11
12
  import structlog
13
+ from power_grid_model import DatasetType
12
14
  from power_grid_model.data_types import Dataset, SingleDataset
13
15
 
14
16
  from power_grid_model_io.data_stores.base_data_store import BaseDataStore
@@ -53,7 +55,9 @@ class BaseConverter(Generic[T], ABC):
53
55
 
54
56
  data = self._load_data(data)
55
57
  extra_info: ExtraInfo = {}
56
- parsed_data = self._parse_data(data=data, data_type="input", extra_info=extra_info if make_extra_info else None)
58
+ parsed_data = self._parse_data(
59
+ data=data, data_type=DatasetType.input, extra_info=extra_info if make_extra_info else None
60
+ )
57
61
  if isinstance(parsed_data, list):
58
62
  raise TypeError("Input data can not be batch data")
59
63
  return parsed_data, extra_info
@@ -70,7 +74,7 @@ class BaseConverter(Generic[T], ABC):
70
74
 
71
75
  """
72
76
  data = self._load_data(data)
73
- return self._parse_data(data=data, data_type="update", extra_info=None)
77
+ return self._parse_data(data=data, data_type=DatasetType.update, extra_info=None)
74
78
 
75
79
  def load_sym_output_data(self, data: Optional[T] = None) -> Dataset:
76
80
  """Load symmetric output data
@@ -84,7 +88,7 @@ class BaseConverter(Generic[T], ABC):
84
88
 
85
89
  """
86
90
  data = self._load_data(data)
87
- return self._parse_data(data=data, data_type="sym_output", extra_info=None)
91
+ return self._parse_data(data=data, data_type=DatasetType.sym_output, extra_info=None)
88
92
 
89
93
  def load_asym_output_data(self, data: Optional[T] = None) -> Dataset:
90
94
  """Load asymmetric output data
@@ -98,7 +102,7 @@ class BaseConverter(Generic[T], ABC):
98
102
 
99
103
  """
100
104
  data = self._load_data(data)
101
- return self._parse_data(data=data, data_type="asym_output", extra_info=None)
105
+ return self._parse_data(data=data, data_type=DatasetType.asym_output, extra_info=None)
102
106
 
103
107
  def load_sc_output_data(self, data: Optional[T] = None) -> Dataset:
104
108
  """Load sc output data
@@ -112,7 +116,7 @@ class BaseConverter(Generic[T], ABC):
112
116
 
113
117
  """
114
118
  data = self._load_data(data)
115
- return self._parse_data(data=data, data_type="sc_output", extra_info=None)
119
+ return self._parse_data(data=data, data_type=DatasetType.sc_output, extra_info=None)
116
120
 
117
121
  def convert(self, data: Dataset, extra_info: Optional[ExtraInfo] = None) -> T:
118
122
  """Convert input/update/(a)sym_output data and optionally extra info.
@@ -181,7 +185,7 @@ class BaseConverter(Generic[T], ABC):
181
185
  raise ValueError("No data supplied!")
182
186
 
183
187
  @abstractmethod # pragma: nocover
184
- def _parse_data(self, data: T, data_type: str, extra_info: Optional[ExtraInfo]) -> Dataset:
188
+ def _parse_data(self, data: T, data_type: DatasetType, extra_info: Optional[ExtraInfo]) -> Dataset:
185
189
  pass
186
190
 
187
191
  @abstractmethod # pragma: nocover