geocif 0.1.49__tar.gz → 0.1.51__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 (73) hide show
  1. {geocif-0.1.49/geocif.egg-info → geocif-0.1.51}/PKG-INFO +1 -1
  2. {geocif-0.1.49 → geocif-0.1.51}/geocif/analysis.py +12 -5
  3. {geocif-0.1.49 → geocif-0.1.51}/geocif/cei/indices.py +1 -1
  4. {geocif-0.1.49 → geocif-0.1.51}/geocif/experiments.py +1 -1
  5. {geocif-0.1.49 → geocif-0.1.51}/geocif/geocif.py +244 -235
  6. geocif-0.1.51/geocif/geocif_runner.py +138 -0
  7. {geocif-0.1.49 → geocif-0.1.51}/geocif/indices_runner.py +14 -13
  8. {geocif-0.1.49 → geocif-0.1.51}/geocif/indices_runner_v2.py +2 -2
  9. geocif-0.1.51/geocif/indices_runner_v3.py +205 -0
  10. {geocif-0.1.49 → geocif-0.1.51}/geocif/logger.py +24 -3
  11. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/feature_engineering.py +19 -0
  12. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/feature_selection.py +17 -3
  13. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/stages.py +31 -0
  14. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/stats.py +5 -3
  15. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/trainers.py +128 -107
  16. geocif-0.1.51/geocif/mm.py +298 -0
  17. geocif-0.1.51/geocif/playground/aa.py +157 -0
  18. geocif-0.1.51/geocif/playground/download_esi.py +71 -0
  19. geocif-0.1.51/geocif/playground/enso.py +77 -0
  20. geocif-0.1.51/geocif/playground/gamtest.py +74 -0
  21. geocif-0.1.51/geocif/playground/sustain.py +113 -0
  22. geocif-0.1.51/geocif/playground/test_catboost.py +488 -0
  23. geocif-0.1.51/geocif/playground/tmp.py +99 -0
  24. geocif-0.1.51/geocif/playground/tmp2.py +207 -0
  25. geocif-0.1.51/geocif/playground/tmp3.py +121 -0
  26. geocif-0.1.51/geocif/playground/tmp4.py +271 -0
  27. geocif-0.1.51/geocif/playground/tmp5.py +55 -0
  28. geocif-0.1.51/geocif/risk/impact_assessment.py +119 -0
  29. {geocif-0.1.49 → geocif-0.1.51}/geocif/utils.py +15 -0
  30. geocif-0.1.51/geocif/viz/__init__.py +4 -0
  31. {geocif-0.1.49 → geocif-0.1.51/geocif.egg-info}/PKG-INFO +1 -1
  32. {geocif-0.1.49 → geocif-0.1.51}/geocif.egg-info/SOURCES.txt +16 -3
  33. {geocif-0.1.49 → geocif-0.1.51}/setup.py +1 -1
  34. geocif-0.1.49/geocif/ml/aa.py +0 -28
  35. geocif-0.1.49/geocif/ml/misc.py +0 -33
  36. geocif-0.1.49/geocif/viz/misc.py +0 -55
  37. {geocif-0.1.49 → geocif-0.1.51}/LICENSE +0 -0
  38. {geocif-0.1.49 → geocif-0.1.51}/MANIFEST.in +0 -0
  39. {geocif-0.1.49 → geocif-0.1.51}/README.md +0 -0
  40. {geocif-0.1.49 → geocif-0.1.51}/geocif/__init__.py +0 -0
  41. {geocif-0.1.49 → geocif-0.1.51}/geocif/agmet/__init__.py +0 -0
  42. {geocif-0.1.49 → geocif-0.1.51}/geocif/agmet/geoagmet.py +0 -0
  43. {geocif-0.1.49 → geocif-0.1.51}/geocif/agmet/plot.py +0 -0
  44. {geocif-0.1.49 → geocif-0.1.51}/geocif/agmet/utils.py +0 -0
  45. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/__init__.py +0 -0
  46. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/constants.py +0 -0
  47. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/features.py +0 -0
  48. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/geo.py +0 -0
  49. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/geocif.py +0 -0
  50. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/metadata.py +0 -0
  51. {geocif-0.1.49 → geocif-0.1.51}/geocif/backup/models.py +0 -0
  52. {geocif-0.1.49 → geocif-0.1.51}/geocif/cei/__init__.py +0 -0
  53. {geocif-0.1.49 → geocif-0.1.51}/geocif/cei/definitions.py +0 -0
  54. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/__init__.py +0 -0
  55. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/correlations.py +0 -0
  56. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/embedding.py +0 -0
  57. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/outliers.py +0 -0
  58. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/outlook.py +0 -0
  59. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/output.py +0 -0
  60. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/spatial_autocorrelation.py +0 -0
  61. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/trend.py +0 -0
  62. {geocif-0.1.49 → geocif-0.1.51}/geocif/ml/xai.py +0 -0
  63. {geocif-0.1.49 → geocif-0.1.51}/geocif/playground/__init__.py +0 -0
  64. {geocif-0.1.49 → geocif-0.1.51}/geocif/playground/automl.py +0 -0
  65. {geocif-0.1.49 → geocif-0.1.51}/geocif/playground/misc.py +0 -0
  66. {geocif-0.1.49/geocif/viz → geocif-0.1.51/geocif/risk}/__init__.py +0 -0
  67. {geocif-0.1.49 → geocif-0.1.51}/geocif/viz/plot.py +0 -0
  68. {geocif-0.1.49 → geocif-0.1.51}/geocif.egg-info/dependency_links.txt +0 -0
  69. {geocif-0.1.49 → geocif-0.1.51}/geocif.egg-info/not-zip-safe +0 -0
  70. {geocif-0.1.49 → geocif-0.1.51}/geocif.egg-info/top_level.txt +0 -0
  71. {geocif-0.1.49 → geocif-0.1.51}/requirements.txt +0 -0
  72. {geocif-0.1.49 → geocif-0.1.51}/setup.cfg +0 -0
  73. {geocif-0.1.49 → geocif-0.1.51}/tests/test_geocif.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: geocif
3
- Version: 0.1.49
3
+ Version: 0.1.51
4
4
  Summary: Models to visualize and forecast crop conditions and yields
5
5
  Home-page: https://ritviksahajpal.github.io/yield_forecasting/
6
6
  Author: Ritvik Sahajpal
@@ -163,6 +163,7 @@ class Geoanalysis:
163
163
 
164
164
  df_metrics = self._compute_metrics(df)
165
165
  df_metrics = self._process_metrics(df_metrics)
166
+
166
167
  self._plot_metrics(df_metrics)
167
168
 
168
169
  df_regional_metrics_by_year = self._compute_regional_metrics(
@@ -183,6 +184,11 @@ class Geoanalysis:
183
184
  return df_metrics, df_regional_metrics, df_national_yield
184
185
 
185
186
  def _clean_data(self):
187
+ # Hack exclude 2012 if country == "illinois"
188
+ if self.country == "illinois":
189
+ self.df_analysis = self.df_analysis[
190
+ self.df_analysis["Harvest Year"] != 2012
191
+ ]
186
192
  # Remove rows with missing values in Observed Yield (tn per ha)
187
193
  return self.df_analysis.dropna(subset=["Observed Yield (tn per ha)"])
188
194
 
@@ -196,11 +202,12 @@ class Geoanalysis:
196
202
  .reset_index()
197
203
  )
198
204
 
199
- return df_metrics.pivot_table(
200
- index=["Country", "Model", "Harvest Year", "Stage Name", "Stage Range"],
201
- columns="level_5",
202
- values=0,
203
- ).reset_index()
205
+ # return df_metrics.pivot_table(
206
+ # index=["Country", "Model", "Harvest Year", "Stage Name", "Stage Range"],
207
+ # columns="level_5",
208
+ # values=0,
209
+ # ).reset_index()
210
+ return df_metrics
204
211
 
205
212
  def _process_metrics(self, df_metrics):
206
213
  # Assign each unique Stage Name a unique integer identifier
@@ -238,7 +238,7 @@ class CEIs:
238
238
 
239
239
  :return:
240
240
  """
241
- df = pd.read_csv(self.file_path, engine="pyarrow")
241
+ df = pd.read_csv(self.file_path) # , engine="pyarrow")
242
242
 
243
243
  # Do a groupby based on adm1_name and Season, drop all Seasons for
244
244
  # which all PHENOLOGICAL_STAGES are not present in the crop_cal column
@@ -3,7 +3,7 @@ from pathlib import Path
3
3
  import matplotlib.pyplot as plt
4
4
  import sklearn
5
5
 
6
- from geocif import geocif as gc
6
+ from geocif import geocif_runner as gc
7
7
  from geocif import logger as log
8
8
 
9
9
  plt.style.use("default")