From be5ccea1f42ff7584294ffa1f714b9ffd80d9b62 Mon Sep 17 00:00:00 2001 From: Jeff Reback Date: Tue, 29 Mar 2016 14:13:57 -0400 Subject: [PATCH 1/3] COMPAT: compat with released numpy 1.11 for IndexError -> TypeError was a revert of # https://github.com/numpy/numpy/pull/6271 closes #12729 closes #12736 --- pandas/compat/numpy_compat.py | 20 +++++++++----------- pandas/tseries/tests/test_period.py | 12 +++++++----- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/pandas/compat/numpy_compat.py b/pandas/compat/numpy_compat.py index 258a3e6cb513a..d71420e979c82 100644 --- a/pandas/compat/numpy_compat.py +++ b/pandas/compat/numpy_compat.py @@ -4,19 +4,17 @@ from distutils.version import LooseVersion from pandas.compat import string_types, string_and_binary_types -# TODO: HACK for NumPy 1.5.1 to suppress warnings -# is this necessary? -try: - np.seterr(all='ignore') -except Exception: # pragma: no cover - pass +# turn off all numpy warnings +np.seterr(all='ignore') # numpy versioning _np_version = np.version.short_version -_np_version_under1p8 = LooseVersion(_np_version) < '1.8' -_np_version_under1p9 = LooseVersion(_np_version) < '1.9' -_np_version_under1p10 = LooseVersion(_np_version) < '1.10' -_np_version_under1p11 = LooseVersion(_np_version) < '1.11' +_nlv = LooseVersion(_np_version) +_np_version_under1p8 = _nlv < '1.8' +_np_version_under1p9 = _nlv < '1.9' +_np_version_under1p10 = _nlv < '1.10' +_np_version_under1p11 = _nlv < '1.11' +_np_version_under1p12 = _nlv < '1.12' if LooseVersion(_np_version) < '1.7.0': raise ImportError('this version of pandas is incompatible with ' @@ -67,9 +65,9 @@ def np_array_datetime64_compat(arr, *args, **kwargs): return np.array(arr, *args, **kwargs) __all__ = ['np', - '_np_version', '_np_version_under1p8', '_np_version_under1p9', '_np_version_under1p10', '_np_version_under1p11', + '_np_version_under1p12', ] diff --git a/pandas/tseries/tests/test_period.py b/pandas/tseries/tests/test_period.py index 1b42924ee5f3d..013b7a754a3fd 100644 --- a/pandas/tseries/tests/test_period.py +++ b/pandas/tseries/tests/test_period.py @@ -26,7 +26,7 @@ from pandas.compat.numpy_compat import np_datetime64_compat from pandas import (Series, DataFrame, - _np_version_under1p9, _np_version_under1p11) + _np_version_under1p9, _np_version_under1p12) from pandas import tslib from pandas.util.testing import (assert_series_equal, assert_almost_equal, assertRaisesRegexp) @@ -2607,8 +2607,9 @@ def test_range_slice_day(self): didx = DatetimeIndex(start='2013/01/01', freq='D', periods=400) pidx = PeriodIndex(start='2013/01/01', freq='D', periods=400) - # changed to TypeError in 1.11 - exc = IndexError if _np_version_under1p11 else TypeError + # changed to TypeError in 1.12 + # https://github.com/numpy/numpy/pull/6271 + exc = IndexError if _np_version_under1p12 else TypeError for idx in [didx, pidx]: # slices against index should raise IndexError @@ -2664,8 +2665,9 @@ def test_range_slice_seconds(self): periods=4000) pidx = PeriodIndex(start='2013/01/01 09:00:00', freq='S', periods=4000) - # changed to TypeError in 1.11 - exc = IndexError if _np_version_under1p11 else TypeError + # changed to TypeError in 1.12 + # https://github.com/numpy/numpy/pull/6271 + exc = IndexError if _np_version_under1p12 else TypeError for idx in [didx, pidx]: # slices against index should raise IndexError From 57c5e64cba1d6c5b42e58272b2107649dbd04156 Mon Sep 17 00:00:00 2001 From: Jeff Reback Date: Mon, 4 Apr 2016 18:14:06 -0400 Subject: [PATCH 2/3] COMPAT: fix some warnings with numpy 1.11 with pytables closes #12792 --- pandas/io/pytables.py | 14 +++++++------- pandas/io/tests/test_pytables.py | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pandas/io/pytables.py b/pandas/io/pytables.py index 14881e0fb5a54..17bd2c97d618d 100644 --- a/pandas/io/pytables.py +++ b/pandas/io/pytables.py @@ -1475,10 +1475,10 @@ def infer(self, handler): def convert(self, values, nan_rep, encoding): """ set the values from this selection: take = take ownership """ - try: + + # values is a recarray + if values.dtype.fields is not None: values = values[self.cname] - except: - pass values = _maybe_convert(values, self.kind, encoding) @@ -2001,10 +2001,10 @@ def convert(self, values, nan_rep, encoding): if we can) """ - try: + # values is a recarray + if values.dtype.fields is not None: values = values[self.cname] - except: - pass + self.set_data(values) # use the meta if needed @@ -4057,7 +4057,7 @@ def read(self, where=None, columns=None, **kwargs): if len(frames) == 1: df = frames[0] else: - df = concat(frames, axis=1, verify_integrity=False).consolidate() + df = concat(frames, axis=1) # apply the selection filters & axis orderings df = self.process_axes(df, columns=columns) diff --git a/pandas/io/tests/test_pytables.py b/pandas/io/tests/test_pytables.py index b8cfccd6a3702..97adbcaa79469 100644 --- a/pandas/io/tests/test_pytables.py +++ b/pandas/io/tests/test_pytables.py @@ -3001,8 +3001,8 @@ def test_sparse_with_compression(self): # GH 2931 # make sparse dataframe - df = DataFrame(np.random.binomial( - n=1, p=.01, size=(1e3, 10))).to_sparse(fill_value=0) + arr = np.random.binomial(n=1, p=.01, size=(1000, 10)) + df = DataFrame(arr).to_sparse(fill_value=0) # case 1: store uncompressed self._check_double_roundtrip(df, tm.assert_frame_equal, @@ -3015,7 +3015,7 @@ def test_sparse_with_compression(self): check_frame_type=True) # set one series to be completely sparse - df[0] = np.zeros(1e3) + df[0] = np.zeros(1000) # case 3: store df with completely sparse series uncompressed self._check_double_roundtrip(df, tm.assert_frame_equal, From 9a97896f7fc8c35f14eb6dc68e1c12fee7fb239c Mon Sep 17 00:00:00 2001 From: Jeff Reback Date: Tue, 5 Apr 2016 09:15:19 -0400 Subject: [PATCH 3/3] BLD: fix 3.5_OSX to numpy 1.10.4 --- ci/requirements-3.5_OSX.build | 2 +- ci/requirements-3.5_OSX.run | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ci/requirements-3.5_OSX.build b/ci/requirements-3.5_OSX.build index 8dbecfc9e9292..a201be352b8e4 100644 --- a/ci/requirements-3.5_OSX.build +++ b/ci/requirements-3.5_OSX.build @@ -1,2 +1,2 @@ -numpy +numpy=1.10.4 cython diff --git a/ci/requirements-3.5_OSX.run b/ci/requirements-3.5_OSX.run index 49c336cae40b1..578f79243c0c0 100644 --- a/ci/requirements-3.5_OSX.run +++ b/ci/requirements-3.5_OSX.run @@ -1,5 +1,5 @@ pytz -numpy +numpy=1.10.4 openpyxl xlsxwriter xlrd