построение временных рядов с помощью панд и matplotlib

#python #pandas #matplotlib

Вопрос:

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

Вот что я сделал,

 groups = df.groupby(pd.Grouper(freq='D')) data = pd.DataFrame(pd.concat([pd.DataFrame(x[1].values) for x in groups], axis=1))  data.boxplot(figsize=(20,5)) plt.show()  

Это и есть результат,

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

Почему я потерял даты по оси X? Могу ли я достичь своей цели более простым способом? Я чувствую, что мой код не является питоническим.

Кроме того, я также выполнил приведенный ниже код, но это складывает дни разных месяцев.

 sns.boxplot(x=d1.index.day, y=d1['Temperature'])  

Пример моего фрейма данных:

 Temp 2019/01/01 00:00:00 25.3 2019/01/01 00:30:00 22.0 2019/01/01 01:00:00 22.1 2019/01/01 01:30:00 28.1 2019/01/01 02:00:00 26.8 2019/01/01 02:30:00 25.3 ... 2019/01/02 00:00:00 20.2 2019/01/02 00:30:00 27.0 2019/01/02 01:00:00 27.5 2019/01/02 01:30:00 28.1 2019/01/02 02:00:00 28.8 2019/01/02 02:30:00 26.3 ... 2019/02/10 23:30:00 21.6  

Спасибо!

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

1. Хотели бы вы добавить образец сгруппированных данных к своему вопросу?

2. Прости! Сделано! @r-новички

3. Учитывая примерные данные: (1) df.index = pd.to_datetime(df.index) (2) df['Day'] = df.index.day (3) sns.boxplot(data=df, x='Day', y='Temp')