Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 熊猫日期范围,结束卡格_Python_Pandas_Ipython - Fatal编程技术网

Python 熊猫日期范围,结束卡格

Python 熊猫日期范围,结束卡格,python,pandas,ipython,Python,Pandas,Ipython,长期读者,第一个问题,对熊猫来说是新的,希望这个问题有意义! 我有一个数据帧df,索引如下: In [151]: df.index Out[151]: <class 'pandas.tseries.index.DatetimeIndex'> [2013-08-04, ..., 2040-08-04] Length: 37, Freq: None, Timezone: None 问题是最后一个季度是2040-06-30,而不是2040-09-30。 所以date\u range中的

长期读者,第一个问题,对熊猫来说是新的,希望这个问题有意义! 我有一个数据帧df,索引如下:

In [151]: df.index
Out[151]: 
<class 'pandas.tseries.index.DatetimeIndex'>
[2013-08-04, ..., 2040-08-04]
Length: 37, Freq: None, Timezone: None
问题是最后一个季度是2040-06-30,而不是2040-09-30。
所以
date\u range
中的end关键字显然设置了
df.index[len(df)-1]
之前的季度,有没有办法告诉
date range
使用以下季度?

在调用
date\u range
时尝试
closed='right'
。不幸的是:
在[38]:pd.DataFrame(index=pd.date\u range)中(start='2014-04-08',end='2040-08-04',freq='Q')).tail()Out[38]:空数据帧列:[索引:[2039-06-30 00:00:00:00,2039-09-30 00:00:00,2039-12-31 00:00:00:00,2040-03-31 00:00:00,2040-06-30 00:00:00:00][5行x 0列]在[40]:pd.DataFrame(索引=pd.date u范围(start='2014-04-08',end='2040-08-08-08',freq',tail='Q'':空数据帧列:[索引:[2039-06-30 00:00:00,2039-09-30 00:00:00,2039-12-31 00:00:00,2040-03-31 00:00:00,2040-06-30 00:00:00]
pd.date\u范围(start=df.Index[0],end=df.Index[len(df)-1]+pd.datetools.quartend(1),freq')
就是我想到的,想知道是否有更简单的方法,比如根据结束和开始关键字严格包括在内,我认为这是一个好的解决方案,因为
date\u range
永远不会返回开始/结束日期以外的值(在您的示例中就是这样)
In [163]: dfm=pd.DataFrame(index=pd.date_range(start=df.index[0],end=df.index[len(df)-1],freq='Q'))

In [164]: dfs=pd.concat([df,dfm]).sort()

In [165]: dfs.tail()
Out[165]: 
                        NPV
2040-03-31              NaN
2040-06-30              NaN
2040-07-30  31977750.393512
2040-08-04  30000000.000000
2040-08-04  30000000.000000

[5 rows x 1 columns]