我在 Pandas 数据框中有多年期间每小时的臭氧数据。我需要为一年中的每一天创建臭氧数据图(即一年的 365 个图)。时间序列采用以下格式:
time_lt
3 1980-04-24 17:00:00
4 1980-04-24 18:00:00
5 1980-04-24 19:00:00
6 1980-04-24 20:00:00
7 1980-04-24 21:00:00
8 1980-04-24 22:00:00
9 1980-04-24 23:00:00
10 1980-04-25 00:00:00
11 1980-04-25 01:00:00
12 1980-04-25 02:00:00
13 1980-04-25 03:00:00
14 1980-04-25 04:00:00
我将如何按每天对数据进行分组以绘制每个数据?什么是最有效的编码方式?
谢谢!
答案 0 :(得分:1)
查找内嵌评论
safeAreaInsets: {
bottom: 0,
},
答案 1 :(得分:0)
您可以即时分组:
import pandas as pd
from io import StringIO
df = pd.read_csv(StringIO(
"""id time_lt
3 1980-04-24 17:00:00
4 1980-04-24 18:00:00
5 1980-04-24 19:00:00
6 1980-04-24 20:00:00
7 1980-04-24 21:00:00
8 1980-04-24 22:00:00
9 1980-04-24 23:00:00
10 1980-04-25 00:00:00
11 1980-04-25 01:00:00
12 1980-04-25 02:00:00
13 1980-04-25 03:00:00
14 1980-04-25 04:00:00"""), sep=" \s+")
df['time_lt'] = pd.to_datetime(df['time_lt'])
>>> df.groupby(df.time_lt.dt.floor('1D')).count()
id time_lt
time_lt
1980-04-24 7 7
1980-04-25 5 5
理论上,您可以编写绘图函数并将其直接apply
到groupby
结果。但是那样的话就更难控制了。由于绘图本身仍然是该链中最慢的操作,因此您可以安全地对日期进行简单的迭代。