1. 程式人生 > >Python pandas Date

Python pandas Date

info 5-0 TP days .com datetime put timedelta numpy

Pandas主要有4中與時間相關的類型。Timestamp, Period, DatetimeIndex,PeriodIndex.

import pandas as pd
import numpy as np
#
#Timestamp
pd.Timestamp(9/1/2016 10:05AM)
#output: Timestamp(‘2016-09-01 10:05:00‘)
#
#Period
pd.Period(1/2016)
#output: Period(‘2016-01‘, ‘M‘)
pd.Period(3/5/2016)
#output: Period(‘2016-03-05‘, ‘D‘)
# #DatetimeIndex t1 = pd.Series(list(abc), [pd.Timestamp(2016-09-01), pd.Timestamp(2016-09-02), pd.Timestamp(2016-09-03)]) t1 """ 2016-09-01 a 2016-09-02 b 2016-09-03 c dtype: object """ type(t1.index) #pandas.tseries.index.DatetimeIndex # #PeriodIndex t2 = pd.Series(list(def), [pd.Period(
2016-09), pd.Period(2016-10), pd.Period(2016-11)]) t2 """ 2016-09 d 2016-10 e 2016-11 f Freq: M, dtype: object """ type(t2.index) # pandas.tseries.period.PeriodIndex

1. 關於時間類型的轉換

#Converting-to-Datetime
d1 = [2 June 2013, Aug 29, 2014, 2015-06-26, 7/12/16]
ts3 = pd.DataFrame(np.random.randint(10, 100, (4,2)), index=d1, columns=list(
ab)) ts3

技術分享圖片

ts3.index = pd.to_datetime(ts3.index)
ts3

技術分享圖片

pd.to_datetime(4.7.12, dayfirst=True)
#output: Timestamp(‘2012-07-04 00:00:00‘)

2. 時間間隔

##Timedeltas
pd.Timestamp(9/3/2016)-pd.Timestamp(9/1/2016)
# Timedelta(‘2 days 00:00:00‘)
pd.Timestamp(9/2/2016 8:10AM) + pd.Timedelta(12D 3H)
# Timestamp(‘2016-09-14 11:10:00‘)

3. Dataframe中的時間

dates = pd.date_range(10-01-2016, periods=9, freq=2W-SUN)
dates
"""
DatetimeIndex([‘2016-10-02‘, ‘2016-10-16‘, ‘2016-10-30‘, ‘2016-11-13‘,
               ‘2016-11-27‘, ‘2016-12-11‘, ‘2016-12-25‘, ‘2017-01-08‘,
               ‘2017-01-22‘],
              dtype=‘datetime64[ns]‘, freq=‘2W-SUN‘)
"""
df = pd.DataFrame({Count 1: 100 + np.random.randint(-5, 10, 9).cumsum(),
                  Count 2: 120 + np.random.randint(-5, 10, 9)}, index=dates)
df

技術分享圖片

df.index.weekday_name
"""
array([‘Sunday‘, ‘Sunday‘, ‘Sunday‘, ‘Sunday‘, ‘Sunday‘, ‘Sunday‘,
       ‘Sunday‘, ‘Sunday‘, ‘Sunday‘], dtype=object)
"""
df.diff()

技術分享圖片

df.resample(M).mean()

技術分享圖片

df[2017]

技術分享圖片

df[2016-12]

技術分享圖片

df[2016-12:]

技術分享圖片

Python pandas Date