Extracting/deleting 行来自时间序列而不使用索引信息

Extracting/deleting rows from time series without using index information

我有一个简单的问题。我想获得具有不依赖于时间索引的特定条件的时间序列子集。我有一个非常庞大的数据集,我只是举一个小例子来让我的问题更容易理解。

                  row_num  marks
   2016-01-01        1     99
   2016-01-02        2     98
   2016-01-01        3     95
   2016-01-01        4     90
   2016-01-02        5     40
   2016-01-03        6     80
   2016-01-04        7     20

我想要一个不应包含 row_num '1' 和 '5' 的数据集, 输出应该是

                 row_num  marks
   
   2016-01-02        2     98
   2016-01-01        3     95
   2016-01-01        4     90
   2016-01-03        6     80
   2016-01-04        7     20

但我的问题是当我尝试删除时,它总是按索引删除并删除 2016-01-01 和 2016-01-02 的所有索引。 我无法手动提取这样的子集,因为数据量非常大,而且有很多重复的索引。如何解决这个问题?

尝试使用以下方法:

df[~df['row_num'].isin([1,5])]

输出:

              row_num  marks
  2016-01-02        2     98
  2016-01-01        3     95
  2016-01-01        4     90
  2016-01-03        6     80
  2016-01-04        7     20