大熊猫如何在星期一之前获得n天的日期

时间:2018-06-12 02:28:56

标签: python-3.x pandas

假设我有一个数据框,第一列是股票交易日。为方便起见,我用数字代表日期。

data = pd.DataFrame({'date': [1,2,3,1,2,3,4,1,2,3],
                     'value': range(1, 11)})

我有另一个包含monthend日期的数据框。所以我首先可以从这样的数据中得到monthend行。

   date value
2  3.0  3.0
6  4.0  7.0
9  3.0  10.0

我希望在星期一之前获取n天的数据,例如,

之前的1天
   date value
1  2.0  2.0
5  3.0  6.0
8  2.0  9.0

我该如何编码呢?​​

1 个答案:

答案 0 :(得分:1)

我正在使用cumsumgroupby

df1=data.groupby(data.date.eq(1).cumsum()).tail(1)
df1
Out[208]: 
   date  value
2     3      3
6     4      7
9     3     10

df2=data.loc[df1.index-1]
df2
Out[213]: 
   date  value
1     2      2
5     3      6
8     2      9
相关问题