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.
- power_grid_model_io/converters/__init__.py +2 -0
- power_grid_model_io/converters/base_converter.py +10 -6
- power_grid_model_io/converters/pandapower_converter.py +158 -120
- power_grid_model_io/converters/pgm_json_converter.py +22 -17
- power_grid_model_io/converters/tabular_converter.py +28 -22
- power_grid_model_io/converters/vision_excel_converter.py +3 -3
- power_grid_model_io/data_stores/excel_file_store.py +5 -5
- power_grid_model_io/data_stores/json_file_store.py +1 -1
- power_grid_model_io/data_stores/vision_excel_file_store.py +1 -0
- power_grid_model_io/data_types/__init__.py +2 -0
- power_grid_model_io/data_types/_data_types.py +2 -2
- power_grid_model_io/data_types/tabular_data.py +7 -7
- power_grid_model_io/functions/__init__.py +12 -0
- power_grid_model_io/functions/filters.py +2 -2
- power_grid_model_io/mappings/tabular_mapping.py +4 -3
- power_grid_model_io/mappings/value_mapping.py +3 -2
- power_grid_model_io/utils/auto_id.py +3 -2
- power_grid_model_io/utils/dict.py +1 -0
- power_grid_model_io/utils/download.py +4 -4
- power_grid_model_io/utils/excel_ambiguity_checker.py +3 -3
- power_grid_model_io/utils/modules.py +1 -0
- power_grid_model_io/utils/uuid_excel_cvtr.py +3 -3
- {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/METADATA +2 -1
- {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/RECORD +27 -27
- {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/WHEEL +0 -0
- {power_grid_model_io-1.3.5.dist-info → power_grid_model_io-1.3.7.dist-info}/licenses/LICENSE +0 -0
- {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(
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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:
|
|
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
|