2017-02-12 86 views
2

我有一個帶有日期和時間值的熊貓數據框,如下所示。按時間取日期輸入和分組熊貓datfarme

Date  Time  Pattern  
0 06/01/13 0:00:01  A 
1 06/02/13 1:00:01  B 
2 06/03/13 2:00:01  A 
3 06/04/13 3:00:01  C 

現在我打算把迄今爲止來自用戶的輸入如下:

date = str(input('Input date in mm-dd-yy format')) 

現在我應該如何通過所有與用戶輸入的日期的行查找/組,並將其複製到一個新的數據幀。我嘗試了很多東西,但與數據時間轉換混淆。

我應該怎麼辦?

回答

1

首先確保你的Datedatetime

df.Date = pd.to_datetime(df.Date) 

然後使用query

date = pd.to_datetime(input('Input date in mm-dd-yyyy format')) 
df.query('Date == @date') 

enter image description here


響應@learningprogramming
您可以在query

date = pd.to_datetime(input('Input date in mm-dd-yyyy format: ')) 
df.query('Date == @date & Pattern == "B"') 

enter image description here


loc作品以及其他標準

date = pd.to_datetime(input('Input date in mm-dd-yyyy format: ')) 
df.loc[(df.Date == date) & (df.Pattern == 'B')] 

enter image description here


把所有在輸入

date = pd.to_datetime(input('Input date in mm-dd-yyyy format: ')) 
pattern = str(input('Input pattern type: ')) 
df.query('Date == @date & Pattern == @pattern') 

enter image description here

在數據幀
+0

建議的解決方案,我也打算按照模式過濾數據幀。我嘗試以下內容:'df_compute = df.loc [(df ['Pattern'] == input_pattern)&(df ['Date']。values == date)]'仍然無效類型比較錯誤。 – learnningprogramming

+0

@learnningprogramming查看更新。 – piRSquared

0

名爲'Date'的列是字符串嗎?如果是的話,你可以嘗試這樣的:

subset = df[df['Date'] == date]

+0

'日期' 列是對象。 – learnningprogramming

+1

然後按照@piRSquared – user666