2012-07-03 76 views
1
times = [datetime(2011, 01, 03, 0, 10 + i, 0) for i in range(5)] 
series = pd.TimeSeries(range(5), index=times) 
series.ix[datetime(2011, 01, 03, 0, 10, 0):datetime(2011, 01, 03, 0, 13, 0)] 

2011-01-03 00:10:00 0 
2011-01-03 00:11:00 1 
2011-01-03 00:12:00 2 
2011-01-03 00:13:00 3 

熊貓切片似乎與列表切片

x = range(5) 
x[0:3] 
[0, 1, 2] 

此外,

times = [datetime.datetime(2000, 1, 1) + datetime.timedelta(minutes=i) for i in range(1000000 - 1)] 
df = pd.TimeSeries(range(1000000 - 1), times) 
len(df.ix[datetime.datetime(1900,1,1):datetime.datetime(2100,1,1)]) 

999999 

times = [datetime.datetime(2000, 1, 1) + datetime.timedelta(minutes=i) for i in range(1000000)] 
df = pd.TimeSeries(range(1000000), times) 
len(df.ix[datetime.datetime(1900,1,1):datetime.datetime(2100,1,1)]) 

回溯(最近通話最後一個)不一致:

File "C:\Program Files (x86)\Wing IDE 4.1\src\debug\tserver\_sandbox.py", line 1, in <module> 
    # Used internally for debug sandbox under external interpreter 
    File "C:\dev\Python26\Lib\site-packages\pandas\core\indexing.py", line 35, in __getitem__ 
    return self._getitem_axis(key, axis=0) 
    File "C:\dev\Python26\Lib\site-packages\pandas\core\indexing.py", line 234, in _getitem_axis 
    return self._get_slice_axis(key, axis=axis) 
    File "C:\dev\Python26\Lib\site-packages\pandas\core\indexing.py", line 460, in _get_slice_axis 
    i, j = labels.slice_locs(start, stop) 
    File "C:\dev\Python26\Lib\site-packages\pandas\tseries\index.py", line 949, in slice_locs 
    return Index.slice_locs(self, start, end) 
    File "C:\dev\Python26\Lib\site-packages\pandas\core\index.py", line 1057, in slice_locs 
    end_slice = self.get_loc(end) + 1 
    File "C:\dev\Python26\Lib\site-packages\pandas\tseries\index.py", line 919, in get_loc 
    return self._engine.get_loc(key) 
    File "C:\dev\Python26\Lib\site-packages\pandas\lib.pyd", line 378, in pandas.lib.DatetimeEngine.get_loc (pandas\src\tseries.c:108808) 
    File "C:\dev\Python26\Lib\site-packages\pandas\lib.pyd", line 390, in pandas.lib.DatetimeEngine.get_loc (pandas\src\tseries.c:108422) 
    File "C:\dev\Python26\Lib\site-packages\pandas\lib.pyd", line 32, in util.get_value_at (pandas\src\tseries.c:112091) 
IndexError: index out of bounds 
+1

我創建一個引用最後一項(這是一個bug)的問題:https://github.com/pydata/pandas/issues/1562 –

+0

這個bug已經在git master中解決了,將會在即將發佈的0.8.1版本中發佈 –

回答

3

documentation

切片用標籤是語義上略有不同,因爲分片開始和結束都在基於標籤的情況下包容