TST: Fixturize series/test_missing.py (#22973) · Pingviinituutti/pandas@e6b0c29 (original) (raw)
`@@ -21,8 +21,6 @@
`
21
21
`import pandas.util.testing as tm
`
22
22
`import pandas.util._test_decorators as td
`
23
23
``
24
``
`-
from .common import TestData
`
25
``
-
26
24
`try:
`
27
25
`import scipy
`
28
26
`_is_scipy_ge_0190 = (LooseVersion(scipy.version) >=
`
`@@ -52,7 +50,7 @@ def _simple_ts(start, end, freq='D'):
`
52
50
`return Series(np.random.randn(len(rng)), index=rng)
`
53
51
``
54
52
``
55
``
`-
class TestSeriesMissingData(TestData):
`
``
53
`+
class TestSeriesMissingData():
`
56
54
``
57
55
`def test_remove_na_deprecation(self):
`
58
56
`# see gh-16971
`
`@@ -489,7 +487,7 @@ def test_isnull_for_inf_deprecated(self):
`
489
487
`tm.assert_series_equal(r, e)
`
490
488
`tm.assert_series_equal(dr, de)
`
491
489
``
492
``
`-
def test_fillna(self):
`
``
490
`+
def test_fillna(self, datetime_series):
`
493
491
`ts = Series([0., 1., 2., 3., 4.], index=tm.makeDateIndex(5))
`
494
492
``
495
493
`tm.assert_series_equal(ts, ts.fillna(method='ffill'))
`
`@@ -506,7 +504,8 @@ def test_fillna(self):
`
506
504
`tm.assert_series_equal(ts.fillna(value=5), exp)
`
507
505
``
508
506
`pytest.raises(ValueError, ts.fillna)
`
509
``
`-
pytest.raises(ValueError, self.ts.fillna, value=0, method='ffill')
`
``
507
`+
pytest.raises(ValueError, datetime_series.fillna, value=0,
`
``
508
`+
method='ffill')
`
510
509
``
511
510
`# GH 5703
`
512
511
`s1 = Series([np.nan])
`
`@@ -576,9 +575,9 @@ def test_fillna_inplace(self):
`
576
575
`expected = x.fillna(value=0)
`
577
576
`assert_series_equal(y, expected)
`
578
577
``
579
``
`-
def test_fillna_invalid_method(self):
`
``
578
`+
def test_fillna_invalid_method(self, datetime_series):
`
580
579
`try:
`
581
``
`-
self.ts.fillna(method='ffil')
`
``
580
`+
datetime_series.fillna(method='ffil')
`
582
581
`except ValueError as inst:
`
583
582
`assert 'ffil' in str(inst)
`
584
583
``
`@@ -632,8 +631,8 @@ def test_timedelta64_nan(self):
`
632
631
``
633
632
`# def test_logical_range_select(self):
`
634
633
`# np.random.seed(12345)
`
635
``
`-
selector = -0.5 <= self.ts <= 0.5
`
636
``
`-
expected = (self.ts >= -0.5) & (self.ts <= 0.5)
`
``
634
`+
selector = -0.5 <= datetime_series <= 0.5
`
``
635
`+
expected = (datetime_series >= -0.5) & (datetime_series <= 0.5)
`
637
636
`# assert_series_equal(selector, expected)
`
638
637
``
639
638
`def test_dropna_empty(self):
`
`@@ -688,8 +687,8 @@ def test_dropna_intervals(self):
`
688
687
`expected = s.iloc[1:]
`
689
688
`assert_series_equal(result, expected)
`
690
689
``
691
``
`-
def test_valid(self):
`
692
``
`-
ts = self.ts.copy()
`
``
690
`+
def test_valid(self, datetime_series):
`
``
691
`+
ts = datetime_series.copy()
`
693
692
`ts[::2] = np.NaN
`
694
693
``
695
694
`result = ts.dropna()
`
`@@ -734,12 +733,12 @@ def test_pad_require_monotonicity(self):
`
734
733
``
735
734
`pytest.raises(ValueError, rng2.get_indexer, rng, method='pad')
`
736
735
``
737
``
`-
def test_dropna_preserve_name(self):
`
738
``
`-
self.ts[:5] = np.nan
`
739
``
`-
result = self.ts.dropna()
`
740
``
`-
assert result.name == self.ts.name
`
741
``
`-
name = self.ts.name
`
742
``
`-
ts = self.ts.copy()
`
``
736
`+
def test_dropna_preserve_name(self, datetime_series):
`
``
737
`+
datetime_series[:5] = np.nan
`
``
738
`+
result = datetime_series.dropna()
`
``
739
`+
assert result.name == datetime_series.name
`
``
740
`+
name = datetime_series.name
`
``
741
`+
ts = datetime_series.copy()
`
743
742
`ts.dropna(inplace=True)
`
744
743
`assert ts.name == name
`
745
744
``
`@@ -825,19 +824,20 @@ def test_series_pad_backfill_limit(self):
`
825
824
`assert_series_equal(result, expected)
`
826
825
``
827
826
``
828
``
`-
class TestSeriesInterpolateData(TestData):
`
``
827
`+
class TestSeriesInterpolateData():
`
829
828
``
830
``
`-
def test_interpolate(self):
`
831
``
`-
ts = Series(np.arange(len(self.ts), dtype=float), self.ts.index)
`
``
829
`+
def test_interpolate(self, datetime_series, string_series):
`
``
830
`+
ts = Series(np.arange(len(datetime_series), dtype=float),
`
``
831
`+
datetime_series.index)
`
832
832
``
833
833
`ts_copy = ts.copy()
`
834
834
`ts_copy[5:10] = np.NaN
`
835
835
``
836
836
`linear_interp = ts_copy.interpolate(method='linear')
`
837
837
`tm.assert_series_equal(linear_interp, ts)
`
838
838
``
839
``
`-
ord_ts = Series([d.toordinal() for d in self.ts.index],
`
840
``
`-
index=self.ts.index).astype(float)
`
``
839
`+
ord_ts = Series([d.toordinal() for d in datetime_series.index],
`
``
840
`+
index=datetime_series.index).astype(float)
`
841
841
``
842
842
`ord_ts_copy = ord_ts.copy()
`
843
843
`ord_ts_copy[5:10] = np.NaN
`
`@@ -847,7 +847,7 @@ def test_interpolate(self):
`
847
847
``
848
848
`# try time interpolation on a non-TimeSeries
`
849
849
`# Only raises ValueError if there are NaNs.
`
850
``
`-
non_ts = self.series.copy()
`
``
850
`+
non_ts = string_series.copy()
`
851
851
`non_ts[0] = np.NaN
`
852
852
`pytest.raises(ValueError, non_ts.interpolate, method='time')
`
853
853
``