From d3739f7e73cd4312b7f3958688f5a9df6da382c5 Mon Sep 17 00:00:00 2001 From: Kamil Grala Date: Mon, 25 Mar 2024 18:34:29 +0100 Subject: [PATCH] [docs/refact] Change the 'KrigingBase' class attributes & adjust the documentation to these changes --- docs/kriging_classes_description.md | 14 +++++++++++++- geokrige/base.py | 21 ++++++++++++++++++--- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/docs/kriging_classes_description.md b/docs/kriging_classes_description.md index a9c95b2..8ab43c1 100644 --- a/docs/kriging_classes_description.md +++ b/docs/kriging_classes_description.md @@ -133,6 +133,18 @@ Dictionary containing variogram and covariance functions for different models. **Type:** dict +### `X_loaded` + +The original `X` data loaded using the `load` method (no transformation performed on this object). + +**Type:** ndarray, GeoDataFrame + +### `y_loaded` + +The original `y` data loaded using the `load` method (no transformation performed on this object). + +**Type:** ndarray, str + ### `X` Input data loaded using the `load` method. If a `GeoDataFrame` object has been loaded, it undergoes transformation and @@ -142,7 +154,7 @@ is then stored in this attribute as an `ndarray` object. ### `y` -Dependent variable values. +Dependent variable values. The values here are transformed by the `scaler` object. **Type:** ndarray, str diff --git a/geokrige/base.py b/geokrige/base.py index c3d0641..e2c27b6 100644 --- a/geokrige/base.py +++ b/geokrige/base.py @@ -30,13 +30,22 @@ class KrigingBase(KrigingDrafter): VARIOGRAM_MODEL_FUNCTIONS : dict Dictionary containing variogram and covariance functions for different models. + X_loaded : Union[np.ndarray, GeoDataFrame] + The original 'X' data loaded using the 'load' method (no transformation + performed on this object). + + y_loaded : Union[np.ndarray, str] + The original 'y' data loaded using the 'load' method (no transformation + performed on this object). + X : Union[ndarray] Input data loaded using the 'load' method. If a GeoDataFrame object has been loaded, it undergoes transformation and is then stored in this attribute as an ndarray object. y : Union[ndarray, str] - Dependent variable values. + Dependent variable values. The values here are transformed by the 'scaler' + object. scaler : StandardScaler StandardScaler object for data scaling. @@ -125,8 +134,11 @@ class KrigingBase(KrigingDrafter): def __init__(self): super().__init__() - self.X: Optional[Union[np.ndarray, GeoDataFrame, list]] = None - self.y: Optional[Union[np.ndarray, str, list]] = None + self.X_loaded: Optional[Union[np.ndarray, GeoDataFrame]] = None + self.y_loaded: Optional[Union[np.ndarray, str]] = None + + self.X: Optional[np.ndarray] = None + self.y: Optional[Union[np.ndarray, str]] = None self.scaler: Optional[StandardScaler] = None self.bins: Optional[int] = None @@ -180,6 +192,9 @@ def load(self, X: Union[np.ndarray, GeoDataFrame], y: Union[np.ndarray, str]) -> if isinstance(X, GeoDataFrame) and not isinstance(y, str): raise TypeError("The 'X' argument is of type 'GeoDataFrame', so the 'y' argument must be of type 'str'.") + self.X_loaded = copy.deepcopy(X) + self.y_loaded = copy.deepcopy(y) + if isinstance(X, GeoDataFrame): y = X.loc[:, y].to_numpy() X = self._convert_gdf_coords_to_ndarray(X)