как получить доступ только к определенным записям в фрейме данных с датой в качестве индекса - PullRequest
0 голосов
/ 13 июня 2018
[this is tail of my DataFrame for around 1000 entries][1]

            Open    Close   High    Change  mx_profitable
Date
2018-06-06  263.00  270.15  271.4   7.15    8.40
2018-06-08  268.95  273.00  273.9   4.05    4.95
2018-06-11  273.30  274.00  278.4   0.70    5.10
2018-06-12  274.00  282.85  284.4   8.85    10.40

Мне нужно отсортировать записи только по определенным датам, например, 25 числа каждого месяца.

1 Ответ

0 голосов
/ 13 июня 2018

Я думаю, что нужно DatetimeIndex.day с boolean indexing:

df[df.index.day == 25]

Образец :

rng = pd.date_range('2017-04-03', periods=1000)
df = pd.DataFrame({'a': range(1000)}, index=rng)  
print (df.head())
            a
2017-04-03  0
2017-04-04  1
2017-04-05  2
2017-04-06  3
2017-04-07  4

df1 = df[df.index.day == 25]
print (df1.head())
              a
2017-04-25   22
2017-05-25   52
2017-06-25   83
2017-07-25  113
2017-08-25  144
...