我正在寻找文档或教程,从Pandas on Python的时间序列中创建7天移动平均线,并在Matplotlib上可视化它。
下面是我的代码:
import pandas as pd
import matplotlib.pyplot as plt
from datetime import datetime, timedelta
plt.style.use('seaborn-poster')
url = 'https://raw.githubusercontent.com/mariorz/covid19-mx-time-series/master/data/covid19_confirmed_mx.csv'
df = pd.read_csv(url, index_col=0)
df = df.loc['Colima','18-03-2020':'12-08-2020']
df = pd.DataFrame(df)
df.index = pd.to_datetime(df.index, format='%d-%m-%Y')
fig, ax = plt.subplots()
ax.plot(df)
ax.set_ylabel('Casos positivos', fontsize=10)
ax.set_title('Casos positivos acumulados de COVID-19 en Colima (12 de agosto, 2020)', fontsize=10)
plt.xticks(rotation=30)
plt.savefig('positivos_registro.png', dpi=500)输出:

发布于 2020-11-07 23:16:05
您可以使用.rolling()计算移动平均值,如下所示:
df.rolling(window=7).mean() Rolling()还有一个参数center=True,让窗口在中间居中计算。然后,当你的窗口是7的时候,它向前看3天,再向后看3天。
默认值为center=False。当窗口为7时,它只取当前天值+6天值。
https://stackoverflow.com/questions/64729104
复制相似问题