On Wed, 2013-06-26 at 11:30 -0400, josef.p...@gmail.com wrote: > Is there a change in the behavior of boolean slicing in current master? >
Yes, but I think this is probably a bug in statsmodel. I would expect you should be using "..." and not ":" here, because ":" requires the dimension to actually exist, and I *expect* that your mask actually has the same dimensionality as the array itself. I.e.: x = np.arange(8).reshape(4,4) mask = np.ones_like(x) x[mask,:] # should NOT work, but this was buggy before current master. - Sebastian > If not I have to find another candidate in numpy master. > > (py27d) E:\Josef\testing\tox\py27d\Scripts>python > Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit > (Intel)] on win32 > Type "help", "copyright", "credits" or "license" for more information. > >>> import numpy as np > >>> np.__version__ > '1.7.1' > >>> x = np.ones((5,3)) > >>> mask = np.arange(5) < 4 > >>> x[mask, :] > array([[ 1., 1., 1.], > [ 1., 1., 1.], > [ 1., 1., 1.], > [ 1., 1., 1.]]) > > > We get errors like the following when running the statsmodels tests > with a current or recent numpy master, but not with numpy 1.7.1 > > ====================================================================== > ERROR: Failure: IndexError (too many indices) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/tom/python2.7/lib/python2.7/site-packages/nose/loader.py", > line 518, in makeTest > return self._makeTest(obj, parent) > File "/Users/tom/python2.7/lib/python2.7/site-packages/nose/loader.py", > line 577, in _makeTest > return MethodTestCase(obj) > File "/Users/tom/python2.7/lib/python2.7/site-packages/nose/case.py", > line 345, in __init__ > self.inst = self.cls() > File > "/Users/tom/python2.7/lib/python2.7/site-packages/statsmodels-0.5.0-py2.7-macosx-10.8-x86_64.egg/statsmodels/emplike/tests/test_aft.py", > line 19, in __init__ > super(Test_AFTModel, self).__init__() > File > "/Users/tom/python2.7/lib/python2.7/site-packages/statsmodels-0.5.0-py2.7-macosx-10.8-x86_64.egg/statsmodels/emplike/tests/test_aft.py", > line 12, in __init__ > self.mod1 = sm.emplike.emplikeAFT(endog, exog, data.censors) > File > "/Users/tom/python2.7/lib/python2.7/site-packages/statsmodels-0.5.0-py2.7-macosx-10.8-x86_64.egg/statsmodels/emplike/aft_el.py", > line 248, in __init__ > self.uncens_endog = self.endog[np.bool_(self.censors), :].\ > IndexError: too many indices > > Thanks, > > Josef > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > http://mail.scipy.org/mailman/listinfo/numpy-discussion > _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion