

def test_getitem_setitem_datetimeindex(self):
    from pandas import date_range
    N = 50
    rng = date_range('1/1/1990', periods=N, freq='H', tz='US/Eastern')
    ts = Series(np.random.randn(N), index=rng)
    result = ts['1990-01-01 04:00:00']
    expected = ts[4]
    self.assertEqual(result, expected)
    result = ts.copy()
    result['1990-01-01 04:00:00'] = 0
    result['1990-01-01 04:00:00'] = ts[4]
    assert_series_equal(result, ts)
    result = ts['1990-01-01 04:00:00':'1990-01-01 07:00:00']
    expected = ts[4:8]
    assert_series_equal(result, expected)
    result = ts.copy()
    result['1990-01-01 04:00:00':'1990-01-01 07:00:00'] = 0
    result['1990-01-01 04:00:00':'1990-01-01 07:00:00'] = ts[4:8]
    assert_series_equal(result, ts)
    lb = '1990-01-01 04:00:00'
    rb = '1990-01-01 07:00:00'
    result = ts[((ts.index >= lb) & (ts.index <= rb))]
    expected = ts[4:8]
    assert_series_equal(result, expected)
    result = ts[datetime(1990, 1, 1, 4)]
    expected = ts[4]
    self.assertEqual(result, expected)
    result = ts.copy()
    result[datetime(1990, 1, 1, 4)] = 0
    result[datetime(1990, 1, 1, 4)] = ts[4]
    assert_series_equal(result, ts)
    result = ts[datetime(1990, 1, 1, 4):datetime(1990, 1, 1, 7)]
    expected = ts[4:8]
    assert_series_equal(result, expected)
    result = ts.copy()
    result[datetime(1990, 1, 1, 4):datetime(1990, 1, 1, 7)] = 0
    result[datetime(1990, 1, 1, 4):datetime(1990, 1, 1, 7)] = ts[4:8]
    assert_series_equal(result, ts)
    lb = datetime(1990, 1, 1, 4)
    rb = datetime(1990, 1, 1, 7)
    result = ts[((ts.index >= lb) & (ts.index <= rb))]
    expected = ts[4:8]
    assert_series_equal(result, expected)
    result = ts[ts.index[4]]
    expected = ts[4]
    self.assertEqual(result, expected)
    result = ts[ts.index[4:8]]
    expected = ts[4:8]
    assert_series_equal(result, expected)
    result = ts.copy()
    result[ts.index[4:8]] = 0
    result[4:8] = ts[4:8]
    assert_series_equal(result, ts)
    result = ts['1990-01-02']
    expected = ts[24:48]
    assert_series_equal(result, expected)
    result = ts.copy()
    result['1990-01-02'] = 0
    result['1990-01-02'] = ts[24:48]
    assert_series_equal(result, ts)

dataset/ETHPy150Open pydata/pandas/pandas/tests/series/test_timeseries.py TestSeriesTimeSeries.test_getitem_setitem_datetimeindex/original