营业日延伸指数范围

2024-05-15 23:45:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一组数据点,其中一些共享相同的日期索引

import pandas as pd

df = pd.DataFrame({'Date':["2016-01-08","2016-01-15", "2016-01-15", "2016-01-23"], 
'Set': ["1", "2", "3", "4"]})

df
Out[2]: 
         Date Set
0  2016-01-08   1
1  2016-01-15   2
2  2016-01-15   3
3  2016-01-23   4

我怎样才能获得一个熊猫数据框架,它将指定时期的营业日作为索引(这里说2016年1月),并且df中的数字与之对齐?在

^{pr2}$

Tags: 数据import框架dataframepandasdfdateas
1条回答
网友
1楼 · 发布于 2024-05-15 23:45:59

由于您正在处理DatetimeIndex,因此我使用Series而不是DataFrame来构建您的示例:

s = pd.Series({"2016-01-08":1,      
               "2016-01-15":2,
               "2016-01-16":3,
               "2016-01-23":3})

然后我将指定日期时间索引:

^{pr2}$

然后,我只使用以下内容构建新的工作日指数:

bd = pd.bdate_range('2016-01-01', '2016-01-31')

并重新编制原始系列的索引:

s = s.reindex(bd)

这将返回:

2016-01-01   NaN
2016-01-04   NaN
2016-01-05   NaN
2016-01-06   NaN
2016-01-07   NaN
2016-01-08     1
2016-01-11   NaN
2016-01-12   NaN
2016-01-13   NaN
2016-01-14   NaN
2016-01-15     2
2016-01-18   NaN
2016-01-19   NaN
2016-01-20   NaN
2016-01-21   NaN
2016-01-22   NaN
2016-01-25   NaN
2016-01-26   NaN
2016-01-27   NaN
2016-01-28   NaN
2016-01-29   NaN
Freq: B, dtype: float64

这并不能处理重复索引的问题,但希望能有所帮助。在

相关问题 更多 >