2016-02-24 54 views
0

在python中,我有一個數據框與日期列,從這裏我得到的df索引達到特定的日期。兩個日期之間的數據幀索引/過濾

我期待在第二個測試idx中有一個「日期A和日期B之間」作爲過濾器,而不是像下面那樣只用一個日期(換句話說,我正在採用一個較小的子集進行初始測試不是說一個巨大的數據集)

train_idx = np.array(df.Date < '2016-01-01') 
test_idx = np.array(df.Date >= '2016-01-01') 

下面是我迄今爲止和錯誤

df = pd.read_csv('./data.csv', parse_dates=[1]) 

train_idx = np.array(df.Date < '2016-01-01') 
test_idx = np.array(df.Date >= '2016-01-01' and df.Date <='2016-03-01') 

返回以下 ValueError異常:一個系列的真值是不明確的。使用a.empty,a.bool(),a.item(),a.any()或a.all()。

回答

1

更換and&如下:

(df.Date >= '2016-01-01') & (df.Date <= '2016-03-01') 

操作&操作元素,明智的,而你的and嘗試,如果他們單獨布爾兩個系列結合起來。真值的含義是模糊的,這意味着強迫一系列要麼TrueFalse沒有意義。

相關問題