cmdstanpy 1.2.3__tar.gz → 1.2.4__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.
- {cmdstanpy-1.2.3/cmdstanpy.egg-info → cmdstanpy-1.2.4}/PKG-INFO +1 -1
- cmdstanpy-1.2.4/cmdstanpy/_version.py +3 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/stancsv.py +6 -1
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4/cmdstanpy.egg-info}/PKG-INFO +1 -1
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_sample.py +20 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_variational.py +9 -4
- cmdstanpy-1.2.3/cmdstanpy/_version.py +0 -3
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/LICENSE.md +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/MANIFEST.in +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/README.md +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/__init__.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/cmdstan_args.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/compilation.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/install_cmdstan.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/install_cxx_toolchain.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/model.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/progress.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/py.typed +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/__init__.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/gq.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/laplace.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/mcmc.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/metadata.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/mle.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/pathfinder.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/runset.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/stanfit/vb.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/__init__.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/cmdstan.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/command.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/data_munging.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/filesystem.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/json.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy/utils/logging.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy.egg-info/SOURCES.txt +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy.egg-info/dependency_links.txt +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy.egg-info/entry_points.txt +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy.egg-info/requires.txt +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/cmdstanpy.egg-info/top_level.txt +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/pyproject.toml +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/setup.cfg +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_cmdstan_args.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_compiler_opts.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_compliance.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_cxx_installation.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_generate_quantities.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_install_cmdstan.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_laplace.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_log_prob.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_metadata.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_model.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_optimize.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_pathfinder.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_runset.py +0 -0
- {cmdstanpy-1.2.3 → cmdstanpy-1.2.4}/test/test_utils.py +0 -0
|
@@ -193,7 +193,12 @@ def scan_config(fd: TextIO, config_dict: Dict[str, Any], lineno: int) -> int:
|
|
|
193
193
|
try:
|
|
194
194
|
val = float(raw_val)
|
|
195
195
|
except ValueError:
|
|
196
|
-
|
|
196
|
+
if raw_val == "true":
|
|
197
|
+
val = 1
|
|
198
|
+
elif raw_val == "false":
|
|
199
|
+
val = 0
|
|
200
|
+
else:
|
|
201
|
+
val = raw_val
|
|
197
202
|
config_dict[key_val[0].strip()] = val
|
|
198
203
|
cur_pos = fd.tell()
|
|
199
204
|
line = fd.readline().strip()
|
|
@@ -2030,6 +2030,26 @@ def test_tuple_data_in() -> None:
|
|
|
2030
2030
|
data_model.sample(data, chains=1, iter_warmup=1, iter_sampling=1)
|
|
2031
2031
|
|
|
2032
2032
|
|
|
2033
|
+
def test_csv_roundtrip():
|
|
2034
|
+
stan = os.path.join(DATAFILES_PATH, 'matrix_var.stan')
|
|
2035
|
+
model = CmdStanModel(stan_file=stan)
|
|
2036
|
+
fit = model.sample(
|
|
2037
|
+
iter_sampling=10, iter_warmup=9, chains=2, save_warmup=True
|
|
2038
|
+
)
|
|
2039
|
+
z = fit.stan_variable(var="z")
|
|
2040
|
+
assert z.shape == (20, 4, 3)
|
|
2041
|
+
z_with_warmup = fit.stan_variable(var="z", inc_warmup=True)
|
|
2042
|
+
assert z_with_warmup.shape == (38, 4, 3)
|
|
2043
|
+
|
|
2044
|
+
# mostly just asserting that from_csv always succeeds
|
|
2045
|
+
# in parsing latest cmdstan headers
|
|
2046
|
+
fit_from_csv = from_csv(fit.runset.csv_files)
|
|
2047
|
+
z_from_csv = fit_from_csv.stan_variable(var="z")
|
|
2048
|
+
assert z_from_csv.shape == (20, 4, 3)
|
|
2049
|
+
z_with_warmup_from_csv = fit.stan_variable(var="z", inc_warmup=True)
|
|
2050
|
+
assert z_with_warmup_from_csv.shape == (38, 4, 3)
|
|
2051
|
+
|
|
2052
|
+
|
|
2033
2053
|
@pytest.mark.order(before="test_no_xarray")
|
|
2034
2054
|
def test_serialization(stanfile='bernoulli.stan'):
|
|
2035
2055
|
# This test must before any test that uses the `without_import` context
|
|
@@ -15,6 +15,7 @@ import pytest
|
|
|
15
15
|
from cmdstanpy.cmdstan_args import CmdStanArgs, VariationalArgs
|
|
16
16
|
from cmdstanpy.model import CmdStanModel
|
|
17
17
|
from cmdstanpy.stanfit import CmdStanVB, RunSet, from_csv
|
|
18
|
+
from cmdstanpy.utils.cmdstan import cmdstan_version_before
|
|
18
19
|
|
|
19
20
|
HERE = os.path.dirname(os.path.abspath(__file__))
|
|
20
21
|
DATAFILES_PATH = os.path.join(HERE, 'data')
|
|
@@ -150,12 +151,12 @@ def test_variational_good() -> None:
|
|
|
150
151
|
'mu[2]',
|
|
151
152
|
)
|
|
152
153
|
# fixed seed, id=1 by default will give known output values
|
|
153
|
-
assert variational.eta ==
|
|
154
|
+
assert variational.eta == 10
|
|
154
155
|
np.testing.assert_almost_equal(
|
|
155
|
-
variational.variational_params_dict['mu[1]'],
|
|
156
|
+
variational.variational_params_dict['mu[1]'], 302.142, decimal=2
|
|
156
157
|
)
|
|
157
158
|
np.testing.assert_almost_equal(
|
|
158
|
-
variational.variational_params_dict['mu[2]'],
|
|
159
|
+
variational.variational_params_dict['mu[2]'], 361.005, decimal=2
|
|
159
160
|
)
|
|
160
161
|
np.testing.assert_almost_equal(
|
|
161
162
|
variational.variational_params_np[0],
|
|
@@ -177,7 +178,11 @@ def test_variational_eta_small() -> None:
|
|
|
177
178
|
DATAFILES_PATH, 'variational', 'eta_should_be_small.stan'
|
|
178
179
|
)
|
|
179
180
|
model = CmdStanModel(stan_file=stan)
|
|
180
|
-
|
|
181
|
+
if cmdstan_version_before(2, 35):
|
|
182
|
+
seed = 12345
|
|
183
|
+
else:
|
|
184
|
+
seed = 1234
|
|
185
|
+
variational = model.variational(algorithm='meanfield', seed=seed)
|
|
181
186
|
assert variational.column_names == (
|
|
182
187
|
'lp__',
|
|
183
188
|
'log_p__',
|
|
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
|