2017-05-03 109 views
2

我創建了熊貓數據框。現在我試圖從這個熊貓數據框中提取一定的時間範圍來創建一個新的數據框並執行一些操作。我的數據看起來像這樣。 。從熊貓數據幀中提取值以創建新的數據幀

timestamp   temp  presure 
1456411800000000 12.90 12 
1456412400000000 13.32 45 
1456413000000000 9.32  32 
1456413600000000 10.3  13 
1456414200000000 12.3  55 
1456414800000000 12.5  76 
1456415400000000 5.4  43 
1456416000000000 2.4  42 
1456416600000000 7.66  22 
1456417200000000 12.3  66 
. 
. 
. 
. 
. 
1456550400000000 32.4 43 

這是一個數據幀。現在我試圖提取兩個時間戳(1456411800000000和1456417200000000)之間的數據並創建新的數據幀。 我在嘗試但無法獲得理想的結果。我收到一些錯誤。

TypeError: Index must be DatetimeIndex

裏面我是用提取該數據幀的代碼行是

test_df = df.between_time('1456411800000000','1456417200000000') 

我嘗試這樣的事情,將它們轉換成datetime對象

df['timestamp'] = pd.to_datetime(df['timestamp'], unit='us') 

而且它是成功的,但我試圖從已經存在的數據幀中提取時間範圍。 有人可以指導我從數據框中提取值並從中創建新的數據框。我是熊貓新手。我會很感激。

df.head的輸出(5)是

timestamp   temp  pressure\ 
0 1456411800000000  12.90 12      
1 1456412400000000  13.32 45        
2 1456413000000000  9.32  32        
3 1456413600000000  10.3  13        
4 1456414200000000  12.3  55      

回答

0

嘗試此如果timestampobject(字符串)D型細胞:

test_df = df.query("'1456411800000000' <= timestamp <= '1456417200000000'") 

test_df = df.loc[df['timestamp'].between('1456411800000000', '1456417200000000')] 
+0

我得到了第一個'ValueError錯誤:無法將字符串轉換爲時間戳'。而第二個錯誤爲.................... TypeError:無效類型比較。 。 – khan

+0

我從MySQL數據庫中獲取數據,並在MySQL中存儲它在紀元時間微秒。 – khan

+0

@khan,確保'timestamp'列是整型dtype第一個 – MaxU