如何在特定日期后删除数据集中的值?

How to delete values in a dataset after a specific date?

我有一个数据集,df1,如下所示:

Date ID City State Value1 Value2 Value3
2020-03 10001 Los Angeles CA 10 22 346
2020-03 10002 Sacramento CA 321 4440 221
... .... ... ... ... ... ...
2022-04 10001 Los Angeles CA 133 1001 2330
2022-04 10002 Sacramento CA 2343 110 1230

我想删除 2021-07 之后的所有值。我可以使用什么代码来做到这一点?这样,我希望我的范围从 2020-032021-07

注:我的date类型是period [M]

你可以做到

out = df.loc[df.Date.between('2020-03','2021-07')]

您可以使用 string indexing 并像这样切片:

df = pd.DataFrame({'A':np.arange(36)}, 
                  index = pd.period_range('2020-01', '2022-12', freq='M'))

df.loc['2020-06':'2021-01']

输出:

          A
2020-06   5
2020-07   6
2020-08   7
2020-09   8
2020-10   9
2020-11  10
2020-12  11
2021-01  12