Преобразование ежемесячных данных в годовые данные во временных рядах Pandas

#python #pandas #dataframe #time-series

#python #pandas #фрейм данных #временные ряды

Вопрос:

У меня есть фрейм данных, в котором указаны цены закрытия акций в конце каждого месяца. Как мне объединить данные, чтобы я получал цену закрытия каждого года.

Примерные данные:

введите описание изображения здесь

У меня есть следующий код

 import pandas as pd
data = pd.read_csv("historical_data.csv")
df = pd.DataFrame(data)
print(df.head())
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
df.index = pd.to_datetime(df.index)
df.resample('A')
print(df.head())
  

Я где-то читал, что «A» — это параметр, используемый для ежегодной агрегации,
но я просто получаю тот же результат без годовой агрегации.

Ответ №1:

Вам необходимо переназначить результат вашей повторной выборки. Кроме того, используйте .last() для получения последней цены за каждый год.

 df = df.resample('A').last()
  

Комментарии:

1. спасибо, это решило проблему. Я присвоил результат новому фрейму данных с помощью .last(), и это сработало.