Pandas 日期函数
Pandas 日期函数操作实例
扩展时间序列,日期功能在财务数据分析中起着重要作用。使用日期数据时,我们经常会遇到以下情况-
生成日期序列
将日期序列转换为不同的频率
创建日期范围
通过指定日期和频率使用date.range()函数,我们可以创建日期序列。默认情况下,范围的频率为天。
import pandas as pd
print(pd.date_range('1/1/2011', periods=5))
运行结果如下:
DatetimeIndex(['2011-01-01', '2011-01-02', '2011-01-03', '2011-01-04', '2011-01-05'],
dtype='datetime64[ns]', freq='D')
更改日期频率
import pandas as pd
print(pd.date_range('1/1/2011', periods=5,freq='M'))
运行结果如下:
DatetimeIndex(['2011-01-31', '2011-02-28', '2011-03-31', '2011-04-30', '2011-05-31'],
dtype='datetime64[ns]', freq='M')
bdate_range
bdate_range()代表营业日期范围。与date_range()不同,它不包括星期六和星期日。
import pandas as pd
print(pd.date_range('1/1/2011', periods=5))
运行结果如下:
DatetimeIndex(['2011-01-01', '2011-01-02', '2011-01-03', '2011-01-04', '2011-01-05'],
dtype='datetime64[ns]', freq='D')
请注意,3月3日之后,日期跳至3月6日(不包括4日和5日)。只需检查日历中的日期即可。
诸如date_range和bdate_range之类的便利功能利用了多种频率别名。date_range的默认频率是日历日,而bdate_range的默认频率是工作日。
import pandas as pd
start = pd.datetime(2011, 1, 1)
end = pd.datetime(2011, 1, 5)
print(pd.date_range(start, end))
运行结果如下:
DatetimeIndex(['2011-01-01', '2011-01-02', '2011-01-03', '2011-01-04', '2011-01-05'],
dtype='datetime64[ns]', freq='D')
偏移别名
为有用的通用时间序列频率提供了许多字符串别名。我们将这些别名称为偏移别名。
别名 |
描述 |
别名 |
描述 |
B |
工作日频率 |
BQS |
业务季度开始频率 |
D |
日历日频率 |
A |
年度(年)结束频率 |
W |
每周频率 |
BA |
营业年度结束频率 |
M |
月末频率 |
BAS |
营业年度开始频率 |
SM |
半月结束频率 |
BH |
营业时间频率 |
BM |
营业月结束频率 |
H |
每小时频率 |
MS |
月开始频率 |
T, min |
分钟频率 |
SMS |
信息半个月开始频率 |
S |
其次频率 |
BMS |
工作月开始频率 |
L, ms |
毫秒 |
Q |
四分之一结束频率 |
U, us |
微秒 |
BQ |
业务季度结束频率 |
N |
纳秒 |
QS |
季度开始频率 |
|
|