discontinuum 1.0.0__tar.gz → 1.0.1__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 (62) hide show
  1. {discontinuum-1.0.0 → discontinuum-1.0.1}/PKG-INFO +1 -1
  2. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/_version.py +2 -2
  3. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum.egg-info/PKG-INFO +1 -1
  4. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/providers/usgs.py +43 -6
  5. {discontinuum-1.0.0 → discontinuum-1.0.1}/.github/workflows/deploy-docs.yml +0 -0
  6. {discontinuum-1.0.0 → discontinuum-1.0.1}/.github/workflows/python-package.yml +0 -0
  7. {discontinuum-1.0.0 → discontinuum-1.0.1}/.github/workflows/python-publish.yml +0 -0
  8. {discontinuum-1.0.0 → discontinuum-1.0.1}/.gitignore +0 -0
  9. {discontinuum-1.0.0 → discontinuum-1.0.1}/DISCLAIMER.md +0 -0
  10. {discontinuum-1.0.0 → discontinuum-1.0.1}/LICENSE.md +0 -0
  11. {discontinuum-1.0.0 → discontinuum-1.0.1}/README.md +0 -0
  12. {discontinuum-1.0.0 → discontinuum-1.0.1}/code.json +0 -0
  13. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/Makefile +0 -0
  14. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/assets/illinois-river-nitrate.png +0 -0
  15. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/make.bat +0 -0
  16. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/source/api_reference.rst +0 -0
  17. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/source/conf.py +0 -0
  18. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/source/getting_started.md +0 -0
  19. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/source/index.md +0 -0
  20. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/source/notebooks/loadest-gp-demo.ipynb +0 -0
  21. {discontinuum-1.0.0 → discontinuum-1.0.1}/docs/source/notebooks/rating-gp-demo.ipynb +0 -0
  22. {discontinuum-1.0.0 → discontinuum-1.0.1}/examples/nwqn-loadest-example/Dockerfile_discontinuum +0 -0
  23. {discontinuum-1.0.0 → discontinuum-1.0.1}/examples/nwqn-loadest-example/README.md +0 -0
  24. {discontinuum-1.0.0 → discontinuum-1.0.1}/examples/nwqn-loadest-example/lithops.yaml +0 -0
  25. {discontinuum-1.0.0 → discontinuum-1.0.1}/examples/nwqn-loadest-example/nwqn-loadest-example.py +0 -0
  26. {discontinuum-1.0.0 → discontinuum-1.0.1}/examples/nwqn-loadest-example/requirements.txt +0 -0
  27. {discontinuum-1.0.0 → discontinuum-1.0.1}/pyproject.toml +0 -0
  28. {discontinuum-1.0.0 → discontinuum-1.0.1}/setup.cfg +0 -0
  29. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/__init__.py +0 -0
  30. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/data_manager.py +0 -0
  31. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/engines/__init__.py +0 -0
  32. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/engines/base.py +0 -0
  33. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/engines/gpytorch.py +0 -0
  34. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/engines/pymc.py +0 -0
  35. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/pipeline.py +0 -0
  36. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/plot.py +0 -0
  37. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/providers/__init__.py +0 -0
  38. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/providers/base.py +0 -0
  39. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/tests/test_pipeline.py +0 -0
  40. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum/utils.py +0 -0
  41. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum.egg-info/SOURCES.txt +0 -0
  42. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum.egg-info/dependency_links.txt +0 -0
  43. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum.egg-info/requires.txt +0 -0
  44. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/discontinuum.egg-info/top_level.txt +0 -0
  45. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/__init__.py +0 -0
  46. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/models/__init__.py +0 -0
  47. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/models/base.py +0 -0
  48. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/models/gpytorch.py +0 -0
  49. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/models/pymc.py +0 -0
  50. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/plot.py +0 -0
  51. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/providers/__init__.py +0 -0
  52. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/providers/usgs.py +0 -0
  53. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/loadest_gp/utils.py +0 -0
  54. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/models/__init__.py +0 -0
  55. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/models/base.py +0 -0
  56. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/models/gpytorch.py +0 -0
  57. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/models/kernels.py +0 -0
  58. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/pipeline.py +0 -0
  59. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/plot.py +0 -0
  60. {discontinuum-1.0.0 → discontinuum-1.0.1}/src/rating_gp/providers/__init__.py +0 -0
  61. {discontinuum-1.0.0 → discontinuum-1.0.1}/tests/test_loadest_gp.py +0 -0
  62. {discontinuum-1.0.0 → discontinuum-1.0.1}/tests/test_rating_gp.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: discontinuum
3
- Version: 1.0.0
3
+ Version: 1.0.1
4
4
  Summary: Estimate discontinuous timeseries from continuous covariates.
5
5
  Maintainer-email: Timothy Hodson <thodson@usgs.gov>
6
6
  License: License
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '1.0.0'
21
- __version_tuple__ = version_tuple = (1, 0, 0)
20
+ __version__ = version = '1.0.1'
21
+ __version_tuple__ = version_tuple = (1, 0, 1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: discontinuum
3
- Version: 1.0.0
3
+ Version: 1.0.1
4
4
  Summary: Estimate discontinuous timeseries from continuous covariates.
5
5
  Maintainer-email: Timothy Hodson <thodson@usgs.gov>
6
6
  License: License
@@ -195,20 +195,50 @@ def get_measurements(
195
195
  NWISDischarge.column_name: NWISDischarge.standard_name,
196
196
  }
197
197
  )
198
- # parse uncertainty from measured "measured_rating_diff"
199
- qualitycode_to_uncertainty_fraction = {
198
+
199
+ # Process the control_type_cd column
200
+ df["control_type_cd"] = (
201
+ df["control_type_cd"]
202
+ .fillna("Unspecified")
203
+ .astype("category")
204
+ )
205
+
206
+ # Filter any measurements that are not used in the rating
207
+ mask = df["q_meas_used_fg"].str.lower().isin(['yes', 'y'])
208
+ df = df[mask]
209
+
210
+ num_not_used = (~mask).sum()
211
+ if num_not_used > 0:
212
+ warnings.warn(
213
+ f"{num_not_used} measurements were not used in the rating and "
214
+ "will be dropped from the dataset.",
215
+ UserWarning,
216
+ )
217
+
218
+
219
+
220
+ # Quantitative values of "measured_rating_diff"
221
+ quality_codes = {
200
222
  'Excellent': '0.02',
201
223
  'Good': '0.05',
202
224
  'Fair': '0.08',
203
225
  'Poor': '0.12',
204
226
  'Unspecified': '0.12',
205
227
  }
228
+ # Replace other values with 'Unspecified'
229
+ df['measured_rating_diff'] = df['measured_rating_diff'].where(
230
+ df['measured_rating_diff'].isin(quality_codes),
231
+ 'Unspecified'
232
+ )
233
+
234
+
206
235
  df['discharge_unc_frac'] = (df['measured_rating_diff']
207
- .replace(qualitycode_to_uncertainty_fraction)
236
+ .replace(quality_codes)
208
237
  .astype(float))
209
- # set indirect measurements as 20% uncertain regardless of quality code
238
+ # Set indirect measurements as 20% uncertain regardless of quality code
210
239
  df.loc[df['streamflow_method'] == 'QIDIR', 'discharge_unc_frac'] = 0.2
211
- # convert fractional uncertainty to uncertainty assuming the uncertainty
240
+
241
+ # Convert fractional uncertainty to uncertainty assuming the uncertainty
212
242
  # fraction is a 2 sigma gse interval. (GSE = frac + 1)
213
243
  # (GSE -> exp(sigma_ln(Q)))
214
244
  df['discharge_unc'] = df['discharge_unc_frac'] / 2 + 1
@@ -216,7 +246,14 @@ def get_measurements(
216
246
  # drop data that is <= 0 as we need all positive data
217
247
  df = df[(df['stage'] > 0) & (df['discharge'] > 0)]
218
248
 
219
- ds = xr.Dataset.from_dataframe(df[["stage", "discharge", "discharge_unc"]])
249
+ ds = xr.Dataset.from_dataframe(
250
+ df[[
251
+ "stage",
252
+ "discharge",
253
+ "discharge_unc",
254
+ "control_type_cd",
255
+ ]]
256
+ )
220
257
 
221
258
  for param in [NWISStage, NWISDischarge]:
222
259
  ds[param.name] = ds[param.name] * param.conversion
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes