pandas處理時間和日期型別資料

2021-08-21 00:17:04 字數 1443 閱讀 4255

匯入乙個時間相關的資料集

import numpy as np

import pandas as pd

## importing a dataset

url=""

data = pd.read_csv(url, header = none)

檢視資料的屬性

>>> data.head(3)

01230

707/24/05

00:00:0001

907/24/05

00:00:0002

707/24/05

00:30:00

1## 檢視所有列的資料型別

>>> data.dtypes

0 int64

1 object

2 object

3 int64

dtype: object

可以看出來第1列和第2列包含時間時間序列資料,但卻是object型別,我們可以轉換成時間型別。

>>> data[1] = pd.to_datetime(data[1])

>>> data[2] = pd.to_datetime(data[2])

>>> data.dtypes

0 int64

1 datetime64[ns]

2 datetime64[ns]

3 int64

dtype: object

>>> data[1].dt.year.unique()

array([2005], dtype=int64)

>>> data[1].dt.month.unique()

array([ 7, 8, 9, 10, 11], dtype=int64)

>>> data[1].dt.day.unique()

array([24, 25, 26, 27, 28, 29, 30, 31, 1, 2, 3, 4, 5, 6, 7, 8, 9,

10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23], dtype=int64)

>>> data[data[1].dt.month == 10].shape

(2976, 4)

>>> data.loc[6624,1] - data.loc[0,1]

timedelta('69 days 00:00:00')

第1行和第6624行的資料相差69天,結果是個timedelta資料型別。

參考:working with dates and timedelta in pandas

pandas處理日期時間

遇到的問題 乙個資料表的兩列,原始資料為float64,如20150101.0 需要求兩個日期的差值,判斷是否超過多少天 9 一些基本的知識 檢視date列有多少行的缺失值 off train date isnull sum 選擇任意行出現空值的資料 off train off train.t.is...

pandas 對日期型別資料的處理

pandas 的日期 時間型別有如下幾種 concept scalar class array class pandas data type primary creation method date times timestamp datetimeindex datetime64 ns or dat...

pandas 時間處理

year month day 是 datetime 標準形式 可以用 datetime.dt.day 取到 day 如果是 datetime 相減,得到兩個時間差的天數,型別變為 timedelta 要用 dt.days 獲取天數 如果是一串數字表達的時間 沒有分隔符 可以用to datetime ...