如何使用pandas從DateTime變數中提取特徵?
從DateTime物件中讀取和提取有效資訊是資料分析中一項非常重要的任務。pandas包提供了一些有用的工具來執行從DateTime物件中提取特徵的操作。
在pandas中,series.dt()方法用於訪問給定時間序列的年份、月份、日期等元件。
series.dt()方法有一些屬性可以提取年份、月份、季度和日期特徵。在下面的示例中,我們將使用其中一些屬性來提取特徵。
示例1
您可以看到我們建立了一個包含10個不同時間戳的pandas序列。然後,我們使用dt.day屬性僅訪問時間序列中的年份。
# importing pandas package
import pandas as pd
#creating the pandas Series
s = pd.Series(pd.date_range('2021-01-01 2:30', periods=10, freq='30H10min'))
print(s)
# access day
result = s.dt.day
print("Output:",result)輸出
輸出如下所示:
0 2021-01-01 02:30:00 1 2021-01-02 08:40:00 2 2021-01-03 14:50:00 3 2021-01-04 21:00:00 4 2021-01-06 03:10:00 5 2021-01-07 09:20:00 6 2021-01-08 15:30:00 7 2021-01-09 21:40:00 8 2021-01-11 03:50:00 9 2021-01-12 10:00:00 dtype: datetime64[ns] Output: 0 1 1 2 2 3 3 4 4 6 5 7 6 8 7 9 8 11 9 12 dtype: int64
初始序列的第一個時間戳是**2021-01-01 02:30:00**,後續時間戳每30小時10分鐘遞增一次,上面輸出塊的第二部分顯示了從DateTime物件中訪問的日期。
示例2
將dt.hour屬性應用於相同的示例,以獲取10個時間戳的小時資料。
# importing pandas package
import pandas as pd
#creating the pandas Series
s = pd.Series(pd.date_range('2021-01-01 2:30', periods=10, freq='30H10min'))
print(s)
# access hour
result = s.dt.hour
print("Output:",result)輸出
輸出如下:
0 2021-01-01 02:30:00 1 2021-01-02 08:40:00 2 2021-01-03 14:50:00 3 2021-01-04 21:00:00 4 2021-01-06 03:10:00 5 2021-01-07 09:20:00 6 2021-01-08 15:30:00 7 2021-01-09 21:40:00 8 2021-01-11 03:50:00 9 2021-01-12 10:00:00 dtype: datetime64[ns] Output: 0 2 1 8 2 14 3 21 4 3 5 9 6 15 7 21 8 3 9 10 dtype: int64
正如我們在上面的輸出塊中看到的,series.dt函式已成功地使用hour屬性返回了小時資料。
廣告
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP