Фильтр интервалов столбца времени - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть фрейм данных со столбцом «Fecha», я хотел бы уменьшить размер де Фрейма через его фильтрацию и поддерживать только те строки, которые на каждые 10 минут кратны, и отбрасывать все строки, которые не кратны 10 минутам.

Desired filter

Есть идеи? Спасибо

1 Ответ

0 голосов
/ 08 апреля 2020

Я должен угадать некоторые имена переменных. Но если предположить, что ваше имя фрейма данных df, решение должно выглядеть примерно так:

df['Fecha'] = pd.to_datetime(df['Fecha'])
df = df[df['Fecha'].minute % 10 == 0]

Первая строка гарантирует, что ваш столбец 'Fecha' имеет формат DateTime. Вторая строка фильтрует все строки, кратные 10 минутам. Для этого вы используете оператор модуля%.

Поскольку я не уверен, что это решит вашу проблему, вот минимальный пример, который запускается сам по себе:

import pandas as pd
idx = pd.date_range(pd.Timestamp(2020, 1, 1), periods=60, freq='1T')
series = pd.Series(1, index=idx)
series = series[series.index.minute % 10 == 0]
series

Первые три строки построить серию с 1-минутным индексом, который фильтруется в четвертой строке.

Вывод:

2020-01-01 00:00:00    1
2020-01-01 00:10:00    1
2020-01-01 00:20:00    1
2020-01-01 00:30:00    1
2020-01-01 00:40:00    1
2020-01-01 00:50:00    1
dtype: int64
...