pandas seaborn绘制箱型图,探索时间序列数据季节性

数据源:https://github.com/zrnsm/pyculiarity/blob/master/tests/raw_data.csv

一般使用箱型图来探索数据的季节性,箱型图主要体现了:极值、四分位点、极值点、中位数

示例代码

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns


def get_data() -> pd.DataFrame:
    dataframe = pd.read_csv("raw_data.csv", index_col=0)
    dataframe.index = pd.to_datetime(dataframe['timestamp'])
    dataframe.drop(['timestamp'], axis=1, inplace=True)
    return dataframe


if __name__ == '__main__':
    df = get_data()
    hour_df = df.resample("h").sum()  # 按小时重采样
    hour_df.loc[:, "day"] = hour_df.index.day
    hour_df.loc[:, "hour"] = hour_df.index.hour
    # 绘制"天"与数量之间的关系
    sns.boxplot(x='day', y="count", data=hour_df)
    plt.show()
    # 绘制"小时"与数量的关系
    sns.boxplot(x='hour', y="count", data=hour_df)
    plt.show()

效果

"天"与数量的关系图:
在这里插入图片描述

"小时"与数量的关系图:

在这里插入图片描述
可以得到,中午时分数量较多,而休息时间数量较少

随时间变化的数量趋势如下图所示:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_35757704/article/details/121747187