长期读者,第一个问题,熊猫新手,希望这个问题有道理! 我有一个DataFrame df索引:
In [151]: df.index
Out[151]:
<class 'pandas.tseries.index.DatetimeIndex'>
[2013-08-04, ..., 2040-08-04]
Length: 37, Freq: None, Timezone: None
我想要一个新的DataFrame,其中包含df已经拥有的所有值,以及在df中第一个日期之后的季度开始的所有季度日期的NaN,以及df中最后一个日期之后的季度结束。 / p>
我的计划是:
所以我做了:
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]
问题是上一季度是2040-06-30而不是2040-09-30。
因此,date_range
中的结束关键字显然设置了df.index[len(df)-1]
之前的季度,有没有办法告诉date-range
使用以下季度?