geocif 0.2.37__tar.gz → 0.2.39__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.
- {geocif-0.2.37/geocif.egg-info → geocif-0.2.39}/PKG-INFO +1 -1
- {geocif-0.2.37 → geocif-0.2.39}/geocif/geocif.py +11 -11
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/trainers.py +7 -2
- {geocif-0.2.37 → geocif-0.2.39/geocif.egg-info}/PKG-INFO +1 -1
- {geocif-0.2.37 → geocif-0.2.39}/setup.py +1 -1
- {geocif-0.2.37 → geocif-0.2.39}/LICENSE +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/MANIFEST.in +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/README.md +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/agmet/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/agmet/geoagmet.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/agmet/plot.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/agmet/utils.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/analysis.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/constants.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/features.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/geo.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/geocif.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/metadata.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/backup/models.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/cei/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/cei/definitions.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/cei/indices.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/experiments.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/geocif_runner.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_angola.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_madagascar.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_malawi.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_mozambique.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_south_africa.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_zambia.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/indices_runner_zimbabwe.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/logger.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/correlations.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/embedding.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/feature_engineering.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/feature_selection.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/outliers.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/outlook.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/output.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/spatial_autocorrelation.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/stages.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/stats.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/trend.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/ml/xai.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/mm.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/aa.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/area.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/automl.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/download_esi.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/enso.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/eval.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/gamtest.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/gee_access.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/misc.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/play_xagg.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/reg.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/sustain.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/test_catboost.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/tmp.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/tmp2.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/tmp3.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/tmp4.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/tmp5.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/wolayita.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/wolayita_maize_mask.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/wolayita_v2.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/playground/wolayita_v3.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/risk/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/risk/impact_assessment.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/utils.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/viz/__init__.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/viz/gt.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/viz/plot.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/viz/tmp.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif/viz/viz_ml.py +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif.egg-info/SOURCES.txt +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif.egg-info/dependency_links.txt +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif.egg-info/not-zip-safe +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/geocif.egg-info/top_level.txt +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/requirements.txt +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/setup.cfg +0 -0
- {geocif-0.2.37 → geocif-0.2.39}/tests/test_geocif.py +0 -0
@@ -786,7 +786,7 @@ class Geocif:
|
|
786
786
|
""" Train, Predict, Explain and Store results for each region """
|
787
787
|
pbar = tqdm(self.df_train["Region_ID"].unique(), leave=False)
|
788
788
|
for idx, region in enumerate(pbar):
|
789
|
-
if self.model_name in ["linear"
|
789
|
+
if self.model_name in ["linear"]:
|
790
790
|
self.create_feature_names(stages, dict_best_cei[region][0:3].tolist())
|
791
791
|
elif self.model_name in ["cumulative_1", "cumulative_2", "cumulative_3"]:
|
792
792
|
self.create_feature_names(stages, {})
|
@@ -831,16 +831,16 @@ class Geocif:
|
|
831
831
|
df_region_train = df_region_train.dropna(subset=[self.target_column])
|
832
832
|
|
833
833
|
self.X_train = df_region_train[self.feature_names]
|
834
|
+
|
834
835
|
# Drop any columns with NaNs except the lag yield columns
|
835
836
|
lag_prefix = "t -"
|
836
|
-
lag_cols = [
|
837
|
-
|
838
|
-
|
839
|
-
|
840
|
-
|
841
|
-
|
842
|
-
|
843
|
-
self.X_train.dropna(axis=1, how="any", subset=cols_to_check, inplace=True)
|
837
|
+
lag_cols = [c for c in self.X_train.columns if c.startswith(lag_prefix)]
|
838
|
+
self.X_train = (
|
839
|
+
self.X_train
|
840
|
+
.drop(columns=lag_cols) # temporarily remove the lag-yield cols
|
841
|
+
.dropna(axis=1, how="any") # drop cols with any NA left
|
842
|
+
.join(self.X_train[lag_cols]) # add lag-yield cols back untouched
|
843
|
+
)
|
844
844
|
self.y_train = df_region_train[self.target_column]
|
845
845
|
|
846
846
|
self.apply_feature_selector(region, dir_output)
|
@@ -1270,8 +1270,8 @@ class Geocif:
|
|
1270
1270
|
|
1271
1271
|
try:
|
1272
1272
|
self.loop_ml(stage, dict_selected_features, dict_best_cei)
|
1273
|
-
except:
|
1274
|
-
|
1273
|
+
except Exception as e:
|
1274
|
+
self.logger.error(e)
|
1275
1275
|
wandb.finish()
|
1276
1276
|
|
1277
1277
|
def setup(self, forecast_season, model):
|
@@ -351,9 +351,14 @@ def auto_train(
|
|
351
351
|
"cumulative_3": s(0) + s(1) + s(2) + te(0, 1) + te(0, 2) + te(1, 2) + f(3),
|
352
352
|
}
|
353
353
|
|
354
|
-
|
355
|
-
|
354
|
+
# Fill nans with medians
|
355
|
+
for col in X_train.columns:
|
356
|
+
if X_train[col].isnull().any():
|
357
|
+
median = X_train[col].median()
|
358
|
+
X_train[col].fillna(median, inplace=True)
|
356
359
|
|
360
|
+
formula = gam_formulas.get(model_name, gam_cls(n_splines=25, spline_order=3))
|
361
|
+
model = gam_cls(n_splines=25, spline_order=3).gridsearch(X_train, y_train.values, lam=np.logspace(-3, 3, 11)) if model_name.startswith("gam") else formula
|
357
362
|
elif model_name == "geospaNN":
|
358
363
|
import torch
|
359
364
|
import geospaNN
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|