Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test errors related to distributions #80

Open
jpeyhardi opened this issue Jan 17, 2019 · 6 comments
Open

Test errors related to distributions #80

jpeyhardi opened this issue Jan 17, 2019 · 6 comments

Comments

@jpeyhardi
Copy link
Contributor

I have some tests errors

The commit is jpeyhardi/Core@3e19064 and the environment used for the build is described by environment.txt

Using the Sublime Text build system (Ctrl + Shift + B then choosing StatisKit), I have the following error message:

Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test binomial ML estimation ... ok
Test binomial MM estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
ERROR
ERROR
ERROR
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test geometric distribution ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test logarithmic distribution ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test mixture estimation using the EM algorithm ... ERROR
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test mixture posterior probabilities ... ok
Test quantile computation ... ok
Test multinormal distribution simulation ... ok
Test negative binomial ML estimation ... ok
Test negative binomial MM estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test normal ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
ERROR
Test Poisson ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
ERROR
Test AIC selection ... ERROR
Test AICc selection ... ERROR
Test BIC selection ... ERROR
Test HQIC selection ... ERROR
ERROR
Test Dirichlet multinomial splitting estimation ... ERROR
Test multinomial splitting estimation ... ERROR

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BetaBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BetaNegativeBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: test suite for <class 'test_categorical.TestNominal'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_categorical.py", line 19, in setUpClass
    pi = linalg.Vector([2., 1., 3.]))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/distribution.py", line 201, in __init__
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: test suite for <class 'test_categorical.TestOrdinal'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_categorical.py", line 42, in setUpClass
    ordered_pi = linalg.Vector([2., 1., 3.]))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/distribution.py", line 201, in __init__
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: test suite for <class 'test_data.TestData'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 23, in setUpClass
    cls._data = data.load('capushe')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/data/core/__init__.py", line 15, in load
    capushe = read_csv(filepath, header=True, sep=',')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 16, in read_csv
    if sep and not isinstance(sep, basestring):
NameError: name 'basestring' is not defined

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(GeometricDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(LogarithmicDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test mixture estimation using the EM algorithm
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_mixture.py", line 29, in test_estimation_em
    default_estimator = core.poisson_estimation('ml'))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 607, in mixture_estimation
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(DiscreteUnivariateMixtureDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(NegativeBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: test suite for <class 'test_ordinal.TestOrdinal'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_ordinal.py", line 19, in setUpClass
    pi = linalg.Vector([2., 1., 3.]))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/distribution.py", line 201, in __init__
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(PoissonDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: test suite for <class 'test_sample_space.TestSampleSpace'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_sample_space.py", line 23, in setUpClass
    cls._data = data.load('capushe')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/data/core/__init__.py", line 15, in load
    capushe = read_csv(filepath, header=True, sep=',')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 16, in read_csv
    if sep and not isinstance(sep, basestring):
NameError: name 'basestring' is not defined

======================================================================
ERROR: Test AIC selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 21, in test_aic
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test AICc selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 28, in test_aicc
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test BIC selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 35, in test_bic
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test HQIC selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 42, in test_hqic
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: test suite for <class 'test_slope_heuristic.TestSlopeHeuristic'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_slope_heuristic.py", line 19, in setUpClass
    cls._data = data.load('capushe')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/data/core/__init__.py", line 15, in load
    capushe = read_csv(filepath, header=True, sep=',')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 16, in read_csv
    if sep and not isinstance(sep, basestring):
NameError: name 'basestring' is not defined

======================================================================
ERROR: Test Dirichlet multinomial splitting estimation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_splitting.py", line 25, in test_estimation
    data=data)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 512, in splitting_estimation
    return _estimation('default', data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test multinomial splitting estimation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_splitting.py", line 45, in test_estimation
    data=data)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 512, in splitting_estimation
    return _estimation('default', data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

Name                                Stmts   Miss  Cover
-------------------------------------------------------
statiskit/core/__init__.py             15      0   100%
statiskit/core/_core.py               329      0   100%
statiskit/core/_tools.py                8      4    50%
statiskit/core/base.py                 13      0   100%
statiskit/core/controls.py             55      8    85%
statiskit/core/data.py                379    254    33%
statiskit/core/distribution.py        774    404    48%
statiskit/core/estimation.py          434    223    49%
statiskit/core/event.py               200     88    56%
statiskit/core/indicator.py           126     50    60%
statiskit/core/io.py                  119     74    38%
statiskit/core/optionals.py            19      5    74%
statiskit/core/sample_space.py        151     67    56%
statiskit/core/singular.py             53     22    58%
statiskit/core/slope_heuristic.py     139     73    47%
-------------------------------------------------------
TOTAL                                2814   1272    55%
----------------------------------------------------------------------
Ran 53 tests in 0.175s

FAILED (errors=21)
scons: *** [build/test/.coverage] Error 1
scons: building terminated because of errors.
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test binomial ML estimation ... ok
Test binomial MM estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
ERROR
ERROR
ERROR
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test geometric distribution ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test logarithmic distribution ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test mixture estimation using the EM algorithm ... ERROR
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test mixture posterior probabilities ... ok
Test quantile computation ... ok
Test multinormal distribution simulation ... ok
Test negative binomial ML estimation ... ok
Test negative binomial MM estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
Test normal ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
ERROR
Test Poisson ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ERROR
Test quantile computation ... ok
ERROR
Test AIC selection ... ERROR
Test AICc selection ... ERROR
Test BIC selection ... ERROR
Test HQIC selection ... ERROR
ERROR
Test Dirichlet multinomial splitting estimation ... ERROR
Test multinomial splitting estimation ... ERROR

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BetaBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BetaNegativeBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: test suite for <class 'test_categorical.TestNominal'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_categorical.py", line 19, in setUpClass
    pi = linalg.Vector([2., 1., 3.]))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/distribution.py", line 201, in __init__
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: test suite for <class 'test_categorical.TestOrdinal'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_categorical.py", line 42, in setUpClass
    ordered_pi = linalg.Vector([2., 1., 3.]))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/distribution.py", line 201, in __init__
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: test suite for <class 'test_data.TestData'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 23, in setUpClass
    cls._data = data.load('capushe')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/data/core/__init__.py", line 15, in load
    capushe = read_csv(filepath, header=True, sep=',')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 16, in read_csv
    if sep and not isinstance(sep, basestring):
NameError: name 'basestring' is not defined

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(GeometricDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(LogarithmicDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test mixture estimation using the EM algorithm
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_mixture.py", line 29, in test_estimation_em
    default_estimator = core.poisson_estimation('ml'))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 607, in mixture_estimation
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(DiscreteUnivariateMixtureDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(NegativeBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: test suite for <class 'test_ordinal.TestOrdinal'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_ordinal.py", line 19, in setUpClass
    pi = linalg.Vector([2., 1., 3.]))
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/distribution.py", line 201, in __init__
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test probability distribution function and related functions
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(PoissonDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

======================================================================
ERROR: test suite for <class 'test_sample_space.TestSampleSpace'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_sample_space.py", line 23, in setUpClass
    cls._data = data.load('capushe')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/data/core/__init__.py", line 15, in load
    capushe = read_csv(filepath, header=True, sep=',')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 16, in read_csv
    if sep and not isinstance(sep, basestring):
NameError: name 'basestring' is not defined

======================================================================
ERROR: Test AIC selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 21, in test_aic
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test AICc selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 28, in test_aicc
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test BIC selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 35, in test_bic
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test HQIC selection
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_selection.py", line 42, in test_hqic
    core.negative_binomial_estimation("ml")])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 715, in selection
    return _estimation(algo, data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: test suite for <class 'test_slope_heuristic.TestSlopeHeuristic'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 209, in run
    self.setUp()
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/nose/util.py", line 471, in try_run
    return func()
  File "/home/jean/Bureau/developpement/Core/build/test/test_slope_heuristic.py", line 19, in setUpClass
    cls._data = data.load('capushe')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/data/core/__init__.py", line 15, in load
    capushe = read_csv(filepath, header=True, sep=',')
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 16, in read_csv
    if sep and not isinstance(sep, basestring):
NameError: name 'basestring' is not defined

======================================================================
ERROR: Test Dirichlet multinomial splitting estimation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_splitting.py", line 25, in test_estimation
    data=data)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 512, in splitting_estimation
    return _estimation('default', data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

======================================================================
ERROR: Test multinomial splitting estimation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_splitting.py", line 45, in test_estimation
    data=data)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 512, in splitting_estimation
    return _estimation('default', data, mapping, **kwargs)
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/estimation.py", line 341, in _estimation
    for attr in kwargs.keys():
RuntimeError: dictionary changed size during iteration

Name                                Stmts   Miss  Cover
-------------------------------------------------------
statiskit/core/__init__.py             15      0   100%
statiskit/core/_core.py               329      0   100%
statiskit/core/_tools.py                8      4    50%
statiskit/core/base.py                 13      0   100%
statiskit/core/controls.py             55      8    85%
statiskit/core/data.py                379    254    33%
statiskit/core/distribution.py        774    404    48%
statiskit/core/estimation.py          434    223    49%
statiskit/core/event.py               200     88    56%
statiskit/core/indicator.py           126     50    60%
statiskit/core/io.py                  119     74    38%
statiskit/core/optionals.py            19      5    74%
statiskit/core/sample_space.py        151     67    56%
statiskit/core/singular.py             53     22    58%
statiskit/core/slope_heuristic.py     139     73    47%
-------------------------------------------------------
TOTAL                                2814   1272    55%
----------------------------------------------------------------------
Ran 53 tests in 0.175s

FAILED (errors=21)
scons: *** [build/test/.coverage] Error 1
scons: building terminated because of errors.
@pfernique
Copy link
Member

pfernique commented Jan 17, 2019

This kind of errors

Traceback (most recent call last):
  File "/home/jean/Bureau/developpement/Core/build/test/test_distribution.py", line 34, in test_pdf_ldf_cdf
    self.assertAlmostEqual(self._dist.cdf(v - 1) + self._dist.pdf(v), self._dist.cdf(v))
Boost.Python.ArgumentError: Python argument types in
    DiscreteUnivariateDistribution.cdf(BetaBinomialDistribution, numpy.int64)
did not match C++ signature:
    cdf(statiskit::DiscreteUnivariateDistribution {lvalue}, int)

is due to passing an integer that is in fact a numpy.int64 instance instead of being an Python int instance.
This means than int the loop, you must add a line v=int(v)

@pfernique
Copy link
Member

Once these changes made, you need to update the Python source code to Python 3 syntax (error with basestring and dictionary changed size during iteration).
To do so, type the following commands (you must be located in the repository root):

  2to3 -n -w src/py/statiskit -x next
  2to3 -n -w test

@jpeyhardi
Copy link
Contributor Author

Ok thanks, now I obtain

Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test binomial ML estimation ... ok
Test binomial MM estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test categorical ML estimation ... ok
Test Ordinal distribution get and set ordered pi and oredered values ... ok
Test categorical ML estimation ... ok
Test named data access ... ERROR
Test univariate data cdf plot ... ERROR
Test multivariate data copy ... ok
Test univariate and multivariate data dispersion ... ERROR
Test multivariate data extraction ... ERROR
Test univariate and multivariate data location ... ERROR
Test univariate and multivariate data pdf plot ... ERROR
Test univariate and multivariate data string representation ... ERROR
Test univariate and multivariate data HTML representation ... ERROR
Test write data to csv ... ERROR
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test geometric distribution ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test logarithmic distribution ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test mixture estimation using the EM algorithm ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test mixture posterior probabilities ... ok
Test quantile computation ... ok
Test multinormal distribution simulation ... ok
Test negative binomial ML estimation ... ok
Test negative binomial MM estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test normal ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test ordinal ML estimation ... ok
Test Poisson ML estimation ... ok
Test moments ... ok
Test probability distribution function and related functions ... ok
Test quantile computation ... ok
Test sample space encoding of events ... ERROR
Test AIC selection ... ok
Test AICc selection ... ok
Test BIC selection ... ok
Test HQIC selection ... ok
Test slope heuristic ... ERROR
Test Dirichlet multinomial splitting estimation ... ok
Test multinomial splitting estimation ... ok

======================================================================
ERROR: Test named data access
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "src/py/statiskit/core/data.py" at line 416, see build results]
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 416, in __getattr__
    names = self.names
[Build error - file "src/py/statiskit/core/data.py" at line 403, see build results]
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 403, in names
    return [str(component.name) for component in self.components]
TypeError: iter() returned non-iterator of type 'Iterator'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 33, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 33, in test_access
    for uevent, mevent in zip(self._data.pen.events, self._data.events):
[Build error - file "src/py/statiskit/core/data.py" at line 420, see build results]
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 420, in __getattr__
    raise AttributeError("'" + self.__class__.__name__ + "' object has no attribute '" + attr + "'")
AttributeError: 'MultivariateDataFrame' object has no attribute 'pen'

======================================================================
ERROR: Test univariate data cdf plot
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 80, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 80, in test_cdf_plot
    for component in self._data.components:
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test univariate and multivariate data dispersion
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 66, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 66, in test_dispersion
    for index, component in enumerate(self._data.components):
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test multivariate data extraction
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 75, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 75, in test_extract
    data = self._data.extract([0, 1])
[Build error - file "src/py/statiskit/core/data.py" at line 289, see build results]
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 289, in extract
    args = [index if index >= 0 else index + len(self.components) for index in args]
[Build error - file "src/py/statiskit/core/data.py" at line 289, see build results]
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 289, in <listcomp>
    args = [index if index >= 0 else index + len(self.components) for index in args]
TypeError: '>=' not supported between instances of 'list' and 'int'

======================================================================
ERROR: Test univariate and multivariate data location
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 56, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 56, in test_location
    for index, component in enumerate(self._data.components):
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test univariate and multivariate data pdf plot
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 50, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 50, in test_pdf_plot
    for component in self._data.components:
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test univariate and multivariate data string representation
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 38, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 38, in test_repr
    for component in self._data.components:
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test univariate and multivariate data HTML representation
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 44, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 44, in test_repr_html
    for component in self._data.components:
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test write data to csv
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_data.py" at line 87, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_data.py", line 87, in test_write_csv
    self._data.write_csv(tmp.name, header=True)
[Build error - file "src/py/statiskit/core/io.py" at line 46, see build results]
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/io.py", line 46, in write_csv
    filehandler.write(sep.join(component.name for component in data.components)+'\n')
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test sample space encoding of events
----------------------------------------------------------------------
Traceback (most recent call last):
[Build error - file "test/test_sample_space.py" at line 27, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_sample_space.py", line 27, in test_encode
    for event in self._data.events:
TypeError: iter() returned non-iterator of type 'Iterator'

======================================================================
ERROR: Test slope heuristic
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 416, in __getattr__
    names = self.names
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 403, in names
    return [str(component.name) for component in self.components]
TypeError: iter() returned non-iterator of type 'Iterator'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
[Build error - file "test/test_slope_heuristic.py" at line 24, see build results]
  File "/home/jean/Bureau/developpement/Core/build/test/test_slope_heuristic.py", line 24, in test_slope_heuristic
    sh = core.SlopeHeuristic([pen.value for pen in self._data.pen.events], [-contrast.value for contrast in self._data.contrast.events])
  File "/home/jean/.miniconda/envs/statiskit/lib/python3.6/site-packages/statiskit/core/data.py", line 420, in __getattr__
    raise AttributeError("'" + self.__class__.__name__ + "' object has no attribute '" + attr + "'")
AttributeError: 'MultivariateDataFrame' object has no attribute 'pen'

Name                                Stmts   Miss  Cover
-------------------------------------------------------
statiskit/core/__init__.py             15      0   100%
statiskit/core/_core.py               329      0   100%
statiskit/core/_tools.py                8      4    50%
statiskit/core/base.py                 13      0   100%
statiskit/core/controls.py             55      8    85%
statiskit/core/data.py                379    214    44%
statiskit/core/distribution.py        774    402    48%
statiskit/core/estimation.py          434    215    50%
statiskit/core/event.py               200     88    56%
statiskit/core/indicator.py           126     38    70%
statiskit/core/io.py                  119     51    57%
statiskit/core/optionals.py            19      5    74%
statiskit/core/sample_space.py        151     44    71%
statiskit/core/singular.py             53     22    58%
statiskit/core/slope_heuristic.py     139     73    47%
-------------------------------------------------------
TOTAL                                2814   1164    59%
----------------------------------------------------------------------
Ran 69 tests in 0.226s

FAILED (errors=11)
scons: *** [build/test/.coverage] Error 1
scons: building terminated because of errors.
[Finished in 19.4s with exit code 2]
[cmd: bash -c 'source /home/jean/.miniconda/bin/activate statiskit && scons test --diagnostics-color=never --with-nose-debug=none']
[dir: /home/jean/Bureau/developpement/Core]
[path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin]

@pfernique
Copy link
Member

pfernique commented Jan 17, 2019

Commit & push, please.

@jpeyhardi
Copy link
Contributor Author

Ok, the commit is jpeyhardi/Core@d2ba4a3

@pfernique
Copy link
Member

pfernique commented Jan 17, 2019

This kind of errors

TypeError: iter() returned non-iterator of type 'Iterator'

is due to a missing __next__ method in a class that should represent an iterator in Python 3.
The method was named next in Python 2.
For instance, in the https://github.com/jpeyhardi/Core/blob/d2ba4a364bb7e14ba1c57215b811d1371bdb16f5/src/py/statiskit/core/data.py file on line 371, there is a method named next that should be renamed __next__.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants