Skip to content

Commit

Permalink
MAINT: Remove Long and WidePanel
Browse files Browse the repository at this point in the history
Deprecated since 0.17.0.

xref pandas-devgh-10892
  • Loading branch information
gfyoung committed Mar 20, 2017
1 parent b1e29db commit 411b94d
Show file tree
Hide file tree
Showing 9 changed files with 5 additions and 46 deletions.
5 changes: 0 additions & 5 deletions asv_bench/benchmarks/pandas_vb_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,6 @@
except:
pass

try:
Panel = Panel
except Exception:
Panel = WidePanel

# didn't add to namespace until later
try:
from pandas.core.index import MultiIndex
Expand Down
4 changes: 2 additions & 2 deletions bench/bench_join_panel.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ def reindex_on_axis(panels, axis, axis_reindex):
return p


# does the job but inefficient (better to handle like you read a table in
# pytables...e.g create a LongPanel then convert to Wide)
# Does the job but inefficient. It is better to handle
# this like you read a table in pytables.
def create_panels_join(cls, panels):
""" given an array of panels's, create a single panel """
panels = [a for a in panels if a is not None]
Expand Down
1 change: 1 addition & 0 deletions doc/source/whatsnew/v0.20.0.txt
Original file line number Diff line number Diff line change
Expand Up @@ -772,6 +772,7 @@ Removal of prior version deprecations/changes
- The ``Categorical`` constructor has dropped the ``name`` parameter (:issue:`10632`)
- The ``take_last`` parameter has been dropped from ``duplicated()``, ``drop_duplicates()``, ``nlargest()``, and ``nsmallest()`` methods (:issue:`10236`, :issue:`10792`, :issue:`10920`)
- ``Series``, ``Index``, and ``DataFrame`` have dropped the ``sort`` and ``order`` methods (:issue:`10726`)
- The ``LongPanel`` and ``WidePanel`` classes have been removed (:issue:`10892`)

.. _whatsnew_0200.performance:

Expand Down
2 changes: 1 addition & 1 deletion pandas/core/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

from pandas.core.series import Series
from pandas.core.frame import DataFrame
from pandas.core.panel import Panel, WidePanel
from pandas.core.panel import Panel
from pandas.core.panel4d import Panel4D
from pandas.core.reshape import (pivot_simple as pivot, get_dummies,
lreshape, wide_to_long)
Expand Down
21 changes: 0 additions & 21 deletions pandas/core/panel.py
Original file line number Diff line number Diff line change
Expand Up @@ -1556,24 +1556,3 @@ def f(self, other, axis=0):
ops.add_special_arithmetic_methods(Panel, **ops.panel_special_funcs)
Panel._add_aggregate_operations()
Panel._add_numeric_operations()


# legacy
class WidePanel(Panel):

def __init__(self, *args, **kwargs):
# deprecation, #10892
warnings.warn("WidePanel is deprecated. Please use Panel",
FutureWarning, stacklevel=2)

super(WidePanel, self).__init__(*args, **kwargs)


class LongPanel(DataFrame):

def __init__(self, *args, **kwargs):
# deprecation, #10892
warnings.warn("LongPanel is deprecated. Please use DataFrame",
FutureWarning, stacklevel=2)

super(LongPanel, self).__init__(*args, **kwargs)
3 changes: 1 addition & 2 deletions pandas/tests/api/test_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,7 @@ class TestPDApi(Base, tm.TestCase):
'TimedeltaIndex', 'Timestamp']

# these are already deprecated; awaiting removal
deprecated_classes = ['WidePanel', 'Panel4D',
'SparseList', 'Expr', 'Term']
deprecated_classes = ['Panel4D', 'SparseList', 'Expr', 'Term']

# these should be deprecated in the future
deprecated_classes_in_future = ['Panel']
Expand Down
3 changes: 0 additions & 3 deletions pandas/tests/io/test_pytables.py
Original file line number Diff line number Diff line change
Expand Up @@ -3017,9 +3017,6 @@ def _check(left, right):
# empty
# self._check_roundtrip(wp.to_frame()[:0], _check)

def test_longpanel(self):
pass

def test_overwrite_node(self):

with ensure_clean_store(self.path) as store:
Expand Down
7 changes: 0 additions & 7 deletions pandas/tests/test_panel.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,10 +178,6 @@ def wrapper(x):

class SafeForSparse(object):

@classmethod
def assert_panel_equal(cls, x, y):
assert_panel_equal(x, y)

def test_get_axis(self):
assert (self.panel._get_axis(0) is self.panel.items)
assert (self.panel._get_axis(1) is self.panel.major_axis)
Expand Down Expand Up @@ -2276,9 +2272,6 @@ class TestLongPanel(tm.TestCase):
"""

def setUp(self):
import warnings
warnings.filterwarnings(action='ignore', category=FutureWarning)

panel = tm.makePanel()
tm.add_nans(panel)

Expand Down
5 changes: 0 additions & 5 deletions vb_suite/pandas_vb_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,6 @@
except:
import pandas._libs.lib as lib

try:
Panel = WidePanel
except Exception:
pass

# didn't add to namespace until later
try:
from pandas.core.index import MultiIndex
Expand Down

0 comments on commit 411b94d

Please sign in to comment.