SearchLibrium 0.0.150__tar.gz → 0.0.151__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 (59) hide show
  1. {searchlibrium-0.0.150/src/SearchLibrium.egg-info → searchlibrium-0.0.151}/PKG-INFO +1 -1
  2. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/pyproject.toml +1 -1
  3. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/predict.py +15 -2
  4. searchlibrium-0.0.151/src/SearchLibrium/version.txt +1 -0
  5. {searchlibrium-0.0.150 → searchlibrium-0.0.151/src/SearchLibrium.egg-info}/PKG-INFO +1 -1
  6. searchlibrium-0.0.150/src/SearchLibrium/version.txt +0 -1
  7. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/MANIFEST.in +0 -0
  8. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/README.md +0 -0
  9. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/setup.cfg +0 -0
  10. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/BEHier.py +0 -0
  11. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/Halton.py +0 -0
  12. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/MixedLogit.py +0 -0
  13. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/Mode_Activity_Nested.py +0 -0
  14. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/RandomP.py +0 -0
  15. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/SEARCH_SM_MARIO.py +0 -0
  16. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/Two_Level_Nest.py +0 -0
  17. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/__init__.py +0 -0
  18. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/__main__.py +0 -0
  19. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/_choice_model.py +0 -0
  20. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/_device.py +0 -0
  21. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/banditsa.py +0 -0
  22. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/bhhh/minimize.py +0 -0
  23. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/boxcox_functions.py +0 -0
  24. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/call_meta.py +0 -0
  25. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/constraints_builder.py +0 -0
  26. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/data/Swissmetro_final.csv +0 -0
  27. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/data/TravelMode.csv +0 -0
  28. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/data/electricity.csv +0 -0
  29. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/harmony.py +0 -0
  30. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/hspbil.py +0 -0
  31. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/latent_class.py +0 -0
  32. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/main.py +0 -0
  33. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/main_debug.py +0 -0
  34. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/mdcev.py +0 -0
  35. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/misc.py +0 -0
  36. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/mixed_logit.py +0 -0
  37. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/mixed_nested.py +0 -0
  38. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/mixedrrm.py +0 -0
  39. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/multinomial_logit.py +0 -0
  40. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/multinomial_nested.py +0 -0
  41. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/multinomial_probit.py +0 -0
  42. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/ordered_logit.py +0 -0
  43. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/ordered_logit_mixed.py +0 -0
  44. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/rrm.py +0 -0
  45. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/sample_data.py +0 -0
  46. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/sapbil.py +0 -0
  47. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/search.py +0 -0
  48. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/selection_models.py +0 -0
  49. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/setup.py +0 -0
  50. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/siman.py +0 -0
  51. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/test_lc_de.py +0 -0
  52. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/test_mario_searches.py +0 -0
  53. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/test_sapbil_vs_banditsa.py +0 -0
  54. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium/threshold.py +0 -0
  55. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium.egg-info/SOURCES.txt +0 -0
  56. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium.egg-info/dependency_links.txt +0 -0
  57. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium.egg-info/entry_points.txt +0 -0
  58. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium.egg-info/requires.txt +0 -0
  59. {searchlibrium-0.0.150 → searchlibrium-0.0.151}/src/SearchLibrium.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SearchLibrium
3
- Version: 0.0.150
3
+ Version: 0.0.151
4
4
  Summary: A Python package for econometric models driven by search
5
5
  Author: Mario Fernando Taco Morales, Alexander Paz, Prithvi Beeramole, Robert Burdett
6
6
  Author-email: Zeke Ahern <z.ahern@qut.edu.au>
@@ -82,7 +82,7 @@ Documentation = "https://pypi.org/project/SearchLibrium/"
82
82
  realpython = "SearchLibrium.__main__:main"
83
83
 
84
84
  [tool.bumpver]
85
- current_version = "0.0.150"
85
+ current_version = "0.0.151"
86
86
  version_pattern = "MAJOR.MINOR.PATCH"
87
87
  commit_message = "[skip ci] Bump version {old_version} -> {new_version}"
88
88
  commit = true
@@ -88,6 +88,14 @@ class DestinationPredictor:
88
88
  if prob is None:
89
89
  prob = getattr(self.model, 'choice_pred_prob', None)
90
90
  if prob is not None and hasattr(prob, 'shape') and len(prob.shape) == 2:
91
+ # JAX-fitted models (_jax=True, the default) leave this as a
92
+ # jax.Array. Downstream code (predict_destinations()) runs plain
93
+ # numpy ops (argmax/argsort) per row in a Python loop; numpy
94
+ # dispatching those against an un-converted jax.Array is
95
+ # catastrophically slow (~4s per argsort call observed, i.e.
96
+ # hours instead of seconds for a few thousand trips) rather than
97
+ # erroring, so convert once here up front.
98
+ prob = np.asarray(prob)
91
99
  self._probs = prob
92
100
  return prob
93
101
 
@@ -106,8 +114,9 @@ class DestinationPredictor:
106
114
  avail.reshape(self.n_trips, self.n_dests),
107
115
  return_logsum=True,
108
116
  )
117
+ probs = np.asarray(probs) # see conversion note above
109
118
  self._probs = probs
110
- self._logsums = logsums
119
+ self._logsums = np.asarray(logsums)
111
120
  return probs
112
121
 
113
122
  # ------------------------------------------------------------------
@@ -147,7 +156,11 @@ class DestinationPredictor:
147
156
  (self.idca[self.trip_id_col] == tid)
148
157
  & (self.idca[self.choice_col] == 1)
149
158
  ]
150
- actual_code = int(actual[self.dest_col].iloc[0]) if len(actual) else -1
159
+ # dest_col isn't always integer-coded (e.g. string alt labels
160
+ # like 'CAR'/'SM'/'TRAIN') -- keep the raw value so it compares
161
+ # correctly against dest_codes/best_code, which retain whatever
162
+ # dtype the source data used.
163
+ actual_code = actual[self.dest_col].iloc[0] if len(actual) else -1
151
164
 
152
165
  rows.append({
153
166
  self.trip_id_col: tid,
@@ -0,0 +1 @@
1
+ 0.0.151
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SearchLibrium
3
- Version: 0.0.150
3
+ Version: 0.0.151
4
4
  Summary: A Python package for econometric models driven by search
5
5
  Author: Mario Fernando Taco Morales, Alexander Paz, Prithvi Beeramole, Robert Burdett
6
6
  Author-email: Zeke Ahern <z.ahern@qut.edu.au>
@@ -1 +0,0 @@
1
- 0.0.150