39
39
40
40
from pandas .sparse .tests .test_array import assert_sp_array_equal
41
41
42
- import warnings
43
- warnings .filterwarnings (action = 'ignore' , category = FutureWarning )
44
-
45
-
46
42
def _test_data1 ():
47
43
# nan-based
48
44
arr = np .arange (20 , dtype = float )
@@ -503,15 +499,6 @@ def check(a, b):
503
499
result = self .bseries + self .bseries .to_dense ()
504
500
assert_sp_series_equal (result , self .bseries + self .bseries )
505
501
506
- # @dec.knownfailureif(True, 'Known NumPy failer as of 1.5.1')
507
- def test_operators_corner2 (self ):
508
- raise nose .SkipTest ('known failer on numpy 1.5.1' )
509
-
510
- # NumPy circumvents __r*__ operations
511
- val = np .float64 (3.0 )
512
- result = val - self .zbseries
513
- assert_sp_series_equal (result , 3 - self .zbseries )
514
-
515
502
def test_binary_operators (self ):
516
503
517
504
# skipping for now #####
@@ -1778,20 +1765,23 @@ def setUp(self):
1778
1765
'ItemC' : panel_data3 (),
1779
1766
'ItemD' : panel_data1 (),
1780
1767
}
1781
- self .panel = SparsePanel (self .data_dict )
1768
+ with tm .assert_produces_warning (FutureWarning ):
1769
+ self .panel = SparsePanel (self .data_dict )
1782
1770
1783
1771
@staticmethod
1784
1772
def _test_op (panel , op ):
1785
1773
# arithmetic tests
1786
- result = op (panel , 1 )
1774
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1775
+ result = op (panel , 1 )
1787
1776
assert_sp_frame_equal (result ['ItemA' ], op (panel ['ItemA' ], 1 ))
1788
1777
1789
1778
def test_constructor (self ):
1790
- self .assertRaises (ValueError , SparsePanel , self .data_dict ,
1791
- items = ['Item0' , 'ItemA' , 'ItemB' ])
1792
- with tm .assertRaisesRegexp (TypeError ,
1793
- "input must be a dict, a 'list' was passed" ):
1794
- SparsePanel (['a' , 'b' , 'c' ])
1779
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1780
+ self .assertRaises (ValueError , SparsePanel , self .data_dict ,
1781
+ items = ['Item0' , 'ItemA' , 'ItemB' ])
1782
+ with tm .assertRaisesRegexp (TypeError ,
1783
+ "input must be a dict, a 'list' was passed" ):
1784
+ SparsePanel (['a' , 'b' , 'c' ])
1795
1785
1796
1786
# deprecation GH11157
1797
1787
def test_deprecation (self ):
@@ -1800,13 +1790,15 @@ def test_deprecation(self):
1800
1790
1801
1791
# GH 9272
1802
1792
def test_constructor_empty (self ):
1803
- sp = SparsePanel ()
1793
+ with tm .assert_produces_warning (FutureWarning ):
1794
+ sp = SparsePanel ()
1804
1795
self .assertEqual (len (sp .items ), 0 )
1805
1796
self .assertEqual (len (sp .major_axis ), 0 )
1806
1797
self .assertEqual (len (sp .minor_axis ), 0 )
1807
1798
1808
1799
def test_from_dict (self ):
1809
- fd = SparsePanel .from_dict (self .data_dict )
1800
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1801
+ fd = SparsePanel .from_dict (self .data_dict )
1810
1802
assert_sp_panel_equal (fd , self .panel )
1811
1803
1812
1804
def test_pickle (self ):
@@ -1830,21 +1822,25 @@ def test_to_dense(self):
1830
1822
assert_panel_equal (dwp , dwp2 )
1831
1823
1832
1824
def test_to_frame (self ):
1833
- def _compare_with_dense (panel ):
1834
- slp = panel .to_frame ()
1835
- dlp = panel .to_dense ().to_frame ()
1836
1825
1837
- self .assert_numpy_array_equal (slp .values , dlp .values )
1838
- self .assertTrue (slp .index .equals (dlp .index ))
1826
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1827
+
1828
+ def _compare_with_dense (panel ):
1829
+ slp = panel .to_frame ()
1830
+ dlp = panel .to_dense ().to_frame ()
1839
1831
1840
- _compare_with_dense ( self .panel )
1841
- _compare_with_dense ( self .panel . reindex ( items = [ 'ItemA' ] ))
1832
+ self .assert_numpy_array_equal ( slp . values , dlp . values )
1833
+ self .assertTrue ( slp . index . equals ( dlp . index ))
1842
1834
1843
- zero_panel = SparsePanel (self .data_dict , default_fill_value = 0 )
1844
- self .assertRaises ( Exception , zero_panel . to_frame )
1835
+ _compare_with_dense (self .panel )
1836
+ _compare_with_dense ( self .panel . reindex ( items = [ 'ItemA' ]) )
1845
1837
1846
- self .assertRaises (Exception , self .panel .to_frame ,
1847
- filter_observations = False )
1838
+ with tm .assert_produces_warning (FutureWarning ):
1839
+ zero_panel = SparsePanel (self .data_dict , default_fill_value = 0 )
1840
+ self .assertRaises (Exception , zero_panel .to_frame )
1841
+
1842
+ self .assertRaises (Exception , self .panel .to_frame ,
1843
+ filter_observations = False )
1848
1844
1849
1845
def test_long_to_wide_sparse (self ):
1850
1846
pass
@@ -1885,47 +1881,53 @@ def test_delitem_pop(self):
1885
1881
self .assertRaises (KeyError , self .panel .__delitem__ , 'ItemC' )
1886
1882
1887
1883
def test_copy (self ):
1888
- cop = self .panel .copy ()
1884
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1885
+ cop = self .panel .copy ()
1889
1886
assert_sp_panel_equal (cop , self .panel )
1890
1887
1891
1888
def test_reindex (self ):
1892
- def _compare_with_dense (swp , items , major , minor ):
1893
- swp_re = swp .reindex (items = items , major = major ,
1894
- minor = minor )
1895
- dwp_re = swp .to_dense ().reindex (items = items , major = major ,
1896
- minor = minor )
1897
- assert_panel_equal (swp_re .to_dense (), dwp_re )
1898
-
1899
- _compare_with_dense (self .panel , self .panel .items [:2 ],
1900
- self .panel .major_axis [::2 ],
1901
- self .panel .minor_axis [::2 ])
1902
- _compare_with_dense (self .panel , None ,
1903
- self .panel .major_axis [::2 ],
1904
- self .panel .minor_axis [::2 ])
1905
-
1906
- self .assertRaises (ValueError , self .panel .reindex )
1907
-
1908
- # TODO: do something about this later...
1909
- self .assertRaises (Exception , self .panel .reindex ,
1910
- items = ['item0' , 'ItemA' , 'ItemB' ])
1911
-
1912
- # test copying
1913
- cp = self .panel .reindex (self .panel .major_axis , copy = True )
1914
- cp ['ItemA' ]['E' ] = cp ['ItemA' ]['A' ]
1915
- self .assertNotIn ('E' , self .panel ['ItemA' ])
1889
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1890
+
1891
+ def _compare_with_dense (swp , items , major , minor ):
1892
+ swp_re = swp .reindex (items = items , major = major ,
1893
+ minor = minor )
1894
+ dwp_re = swp .to_dense ().reindex (items = items , major = major ,
1895
+ minor = minor )
1896
+ assert_panel_equal (swp_re .to_dense (), dwp_re )
1897
+
1898
+ _compare_with_dense (self .panel , self .panel .items [:2 ],
1899
+ self .panel .major_axis [::2 ],
1900
+ self .panel .minor_axis [::2 ])
1901
+ _compare_with_dense (self .panel , None ,
1902
+ self .panel .major_axis [::2 ],
1903
+ self .panel .minor_axis [::2 ])
1904
+
1905
+ self .assertRaises (ValueError , self .panel .reindex )
1906
+
1907
+ # TODO: do something about this later...
1908
+ self .assertRaises (Exception , self .panel .reindex ,
1909
+ items = ['item0' , 'ItemA' , 'ItemB' ])
1910
+
1911
+ # test copying
1912
+ cp = self .panel .reindex (self .panel .major_axis , copy = True )
1913
+ cp ['ItemA' ]['E' ] = cp ['ItemA' ]['A' ]
1914
+ self .assertNotIn ('E' , self .panel ['ItemA' ])
1916
1915
1917
1916
def test_operators (self ):
1918
1917
def _check_ops (panel ):
1918
+
1919
1919
def _dense_comp (op ):
1920
- dense = panel .to_dense ()
1921
- sparse_result = op (panel )
1922
- dense_result = op (dense )
1923
- assert_panel_equal (sparse_result .to_dense (), dense_result )
1920
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1921
+ dense = panel .to_dense ()
1922
+ sparse_result = op (panel )
1923
+ dense_result = op (dense )
1924
+ assert_panel_equal (sparse_result .to_dense (), dense_result )
1924
1925
1925
1926
def _mixed_comp (op ):
1926
- result = op (panel , panel .to_dense ())
1927
- expected = op (panel .to_dense (), panel .to_dense ())
1928
- assert_panel_equal (result , expected )
1927
+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1928
+ result = op (panel , panel .to_dense ())
1929
+ expected = op (panel .to_dense (), panel .to_dense ())
1930
+ assert_panel_equal (result , expected )
1929
1931
1930
1932
op1 = lambda x : x + 2
1931
1933
0 commit comments