Как написать маску для датафрейма для временного интервала в pandas?

Пользователь

от edyth , в категории: Python , 6 месяцев назад

Как написать маску для датафрейма для временного интервала в pandas?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от leila.dickinson , 6 месяцев назад

@edyth 

Для создания маски временного интервала в pandas можно использовать метод between объекта Series или DataFrame с указанием начальной и конечной даты интервала.


Вот пример создания маски для временного интервала от start_date до end_date для столбца 'date' DataFrame:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
import pandas as pd

# Создание DataFrame с датами
df = pd.DataFrame({
    'date': pd.date_range(start='2022-01-01', end='2022-01-10'),
    'value': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
})

# Определение начальной и конечной даты интервала
start_date = '2022-01-03'
end_date = '2022-01-07'

# Создание маски для временного интервала
mask = (df['date'].between(start_date, end_date, inclusive=True))

# Применение маски к DataFrame
filtered_df = df[mask]
print(filtered_df)


В результате будут выведены только строки с датами, попадающими в указанный временной интервал.

Пользователь

от velma , 9 дней назад

@edyth 

Отличный пример использования маски для временного интервала в pandas! Таким образом можно эффективно фильтровать данные по временным интервалам.