基于第一个非零出现的子集熊猫数据帧

时间:2019-12-27 10:36:50

标签: python pandas dataframe

这是示例数据帧:-

    Trade_signal

2007-07-31      0.0
2007-08-31      0.0
2007-09-28      0.0
2007-10-31      0.0
2007-11-30      0.0
2007-12-31      0.0
2008-01-31      0.0
2008-02-29      0.0
2008-03-31      0.0
2008-04-30      0.0
2008-05-30      0.0
2008-06-30      0.0
2008-07-31     -1.0
2008-08-29      0.0
2008-09-30     -1.0
2008-10-31     -1.0
2008-11-28     -1.0
2008-12-31      0.0
2009-01-30     -1.0
2009-02-27     -1.0
2009-03-31      0.0
2009-04-30      0.0
2009-05-29      1.0
2009-06-30      1.0
2009-07-31      1.0
2009-08-31      1.0
2009-09-30      1.0
2009-10-30      0.0
2009-11-30      1.0
2009-12-31      1.0

1表示买入,-1表示卖出。我想对数据框进行子集处理,以便新的数据框从第一个出现的事件开始。预期输出:-

2009-05-29      1.0
2009-06-30      1.0
2009-07-31      1.0
2009-08-31      1.0
2009-09-30      1.0
2009-10-30      0.0
2009-11-30      1.0
2009-12-31      1.0

请提出前进的方向。抱歉,这是一个重复的问题。

1 个答案:

答案 0 :(得分:1)

简单地做。这里的df[1]是指包含买卖数据的列。

new_df = df.iloc[df[df["Trade Signal"]==1].index[0]:,:]