使用pandas用一年的数据来看每周各天数据的变化

可以使用以下步骤:
1. 读入数据,确保日期列为pandas的datetime类型,并将其设置为索引。

import pandas as pd
data = pd.read_csv("data.csv")
data["date"] = pd.to_datetime(data["date"])
data.set_index("date", inplace=True)

2. 将数据按周进行分组,并计算每天的平均值。

weekly_data = data.resample("W").mean()

3. 对每周的数据进行透视以查看每天的平均值。

pivot_data = pd.pivot_table(weekly_data, values="value", index=weekly_data.index.weekday_name, columns=weekly_data.index.weekofyear)

4. 绘制热力图以可视化每周各天数据的变化。

import seaborn as sns
import matplotlib.pyplot as plt

sns.heatmap(pivot_data, cmap="YlGnBu")
plt.title("Weekly variation of data")
plt.xlabel("Week of year")
plt.ylabel("Day of week")
plt.show()

完整代码如下:

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

data = pd.read_csv("data.csv")
data["date"] = pd.to_datetime(data["date"])
data.set_index("date", inplace=True)

weekly_data = data.resample("W").mean()

pivot_data = pd.pivot_table(weekly_data, values="value", index=weekly_data.index.weekday_name, columns=weekly_data.index.weekofyear)

sns.heatmap(pivot_data, cmap="YlGnBu")
plt.title("Weekly variation of data")
plt.xlabel("Week of year")
plt.ylabel("Day of week")
plt.show()

其中,”data.csv”是包含日期和数值列的原始数据文件的名称。

   
 
 

为你推荐
Ta的个人站点

mb发布文章164篇


imcn微信公众号

分类