🐼 Задача на знание Pandas



Условие: У вас есть датафрейм df, содержащий два столбца: A и B. Столбец A содержит даты, а столбец B — числовые значения. Как бы вы рассчитали скользящее среднее по столбцу B с окном в 3 дня, предполагая, что значения в столбце A идут подряд и без пропусков?



Решение:

import pandas as pd



data = {

'A': ['2023-01-01', '2023-01-02', '2023-01-03', '2023-01-04', '2023-01-05',

'2023-01-06', '2023-01-07', '2023-01-08', '2023-01-09'],

'B': [18, 71, 13, 57, 7, 8, 69, 83, 27]

}



df = pd.DataFrame(data)



# Убедимся, что столбец A распознан как дата

df['A'] = pd.to_datetime(df['A'])



# Установим столбец дат как индекс датафрейма

df = df.set_index('A')



# Рассчитаем скользящее среднее по столбцу B с окном в 3 дня

df['Moving_Average'] = df['B'].rolling(window=3).mean()



print(df)




#python

#pandas

#программирование