Python技术迷

Pandas 教程-Pandas时间段

整理:python架构师

时间段代表时间跨度,例如天数、年份、季度或月份等。它被定义为一种允许我们将频率转换为时间段的类。

生成时间段和频率转换

我们可以使用 'Period' 命令和频率 'M' 生成时间段。如果我们使用 'asfreq' 操作与 'start' 操作,日期将打印 '01',而如果我们使用 'end' 选项,日期将打印 '31'。

示例:

import pandas as pd  x = pd.Period('2014', freq='S')   x.asfreq('D', 'start')  
输出:
Period('2014-01-01', 'D')

示例:

import pandas as pd  x = pd.Period('2014', freq='S')   x.asfreq('D', 'end')  
输出:
Period('2014-01-31', 'D')

专属福利 

👉点击领取:最全Python资料合集

时间段算术

时间段算术用于对时间段执行各种算术操作。所有操作将根据 'freq' 进行。
import pandas as pd  x = pd.Period('2014', freq='Q')   x
输出:
Period('2014', 'Q-DEC')

示例:

import pandas as pd  x = pd.Period('2014', freq='Q')   x + 1  
输出:
Period('2015', 'Q-DEC')

创建时间段范围

我们可以使用 'period_range' 命令创建时间段范围。
import pandas as pd  p = pd.period_range('2012', '2017', freq='A')   p
输出:
PeriodIndex(['2012-01-02', '2012-01-03', '2012-01-04', '2012-01-05',             '2012-01-06', '2012-01-09', '2012-01-10', '2012-01-11',             '2012-01-12', '2012-01-13',             '2016-12-20', '2016-12-21', '2016-12-22', '2016-12-23',             '2016-12-26', '2016-12-27', '2016-12-28', '2016-12-29',             '2016-12-30', '2017-01-02'],            dtype='period[B]', length=1306, freq='B')

将字符串日期转换为时间段

如果我们想将字符串日期转换为时间段,首先需要将字符串转换为日期格式,然后我们可以将日期转换为时间段。
# dates as string   p = ['2012-06-05', '2011-07-09', '2012-04-06']  # convert string to date format   x = pd.to_datetime(p)   x
输出:
DatetimeIndex(['2012-06-05', '2011-07-09', '2012-04-06'], dtype='datetime64[ns]', freq=None)

将时间段转换为时间戳

如果我们将时间段转换回时间戳,我们可以简单地使用 'to_timestamp' 命令。
import pandas as pd  prd  prd.to_timestamp()
输出:
DatetimeIndex(['2017-04-02', '2016-04-06', '2016-05-08'], dtype='datetime64[ns]', freq=None)
Image
 1

Image

热门推荐
Image