【发布时间】:2021-04-26 10:00:59
【问题描述】:
对不起,我的标题可能有点混乱。
我得到了一个巨大的日期时间索引数据框,在 2 年内每小时 1 个条目。
我正在尝试研究不同规模(年、月、周、日...)的不同季节性
我在绘制年、月、周或每日图表时没有问题,但我无法进行下一步。
我想选择一个特定范围的数据(例如,如果我想研究夏季,假设是在 5 月到 9 月之间),并绘制一个图形来表示一周中所选时段的每小时平均小时数。 就像我的第一点是此期间所有星期一凌晨 01:00 的平均值,第二点是 02:00 的平均值,依此类推,直到星期日 23:00。
如果有人能给我一个线索,我只是不知道该怎么做:/
希望你有美好的一天
编辑我没有太多代码,但无论如何我都会尝试向您展示。
我试图找到一个值,现在我想创建一个可以找到所有其他值并绘制图形的函数
season=df.loc['2019-04':'2019-09']
x=season[["column_name"]][(saison["hour"]==1)&(season["day"]==1)]
x.mean()
这给了我在星期一凌晨 1 点寻找的值。 现在我想创建一个循环,它可以以正确的顺序生成所有值来绘制整个星期
好吧,我终于用这个得到了我的解决方案
def graph(a,b,c): #With "a' the date starting the period I want, 'b' the date ending it and 'c' the column I want to plot
saison=df.loc[a:b]
test=[]
for i in range (7):
for j in range (24):
x=season[[c]][(season["hour"]==j)&(season["day"]==i)]
z=x.mean()
test.append(z)
plt.figure(figsize=[18,10])
plt.xticks([0,24,48,72,96,120,144],['Monday','Tuesday','Wednesday','Thursday','Friday', 'Saturday', 'Sunday'])
plt.plot(test)
很确定这不是最性感的方式,但现在看来已经足够了 :)
【问题讨论】:
-
请添加最小代码以重现
-
我添加了一点代码来解释,但我的问题是我找不到启动代码的方法,所以我没有太多代码:/