我有一个如下所示的数据框:
pressure mean pressure std
2016-03-01 00:00:00 615.686441 0.138287
2016-03-01 01:00:00 615.555000 0.067460
2016-03-01 02:00:00 615.220000 0.262840
2016-03-01 03:00:00 614.993333 0.138841
2016-03-01 04:00:00 615.075000 0.072778
2016-03-01 05:00:00 615.513333 0.162049
................
第一列是索引列。
我想创建一个只包含下午3点和凌晨3点的新数据帧, 所以它看起来像这样:
pressure mean pressure std
2016-03-01 03:00:00 614.993333 0.138841
2016-03-01 15:00:00 616.613333 0.129493
2016-03-02 03:00:00 615.600000 0.068889
..................
有什么想法吗?
谢谢!
答案 0 :(得分:3)
我无法使用pd.read_clipboard()
加载您的数据,因此我将重新创建一些数据:
df = pd.DataFrame(index=pd.date_range('2016-03-01', freq='H', periods=72),
data=np.random.random(size=(72,2)),
columns=['pressure', 'mean'])
现在您的数据框应该有DatetimeIndex
。如果没有,您可以使用df.index = pd.to_datetime(df.index)
。
然后使用布尔索引很容易:
df.ix[(df.index.hour == 3) | (df.index.hour == 15)]