如何将没有日期的excel时间转换成pandas数据帧,然后进行绘图?

2024-05-16 08:08:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我想把数据集从excel文件导入pandas dataframe,然后打印出来。数据集包含日期列-应将其转换为pd.日期时间和秒表列-应该转换为:HH:MM:SS或HH:MM或H:MM的格式取决于数据(小时可能超过24小时,格式不应包括日期)。以下是数据中的一些行:

Date       Stopwatch1 Stopwatch2 Stopwatch3 Timesum
01.08.2019 00:10:05   19:05      0:45       25:01:00
02.08.2019 00:08:00   23:50      0:30       30:30:00
03.08.2019 00:05:00   00:10      0:40      124:00:00

然后我想在y轴上绘制秒表列,在x轴上绘制时间格式(HH:MM)的标签和x轴上的日期列。如果我可以指定,例如,如果time<;06:00:time=time+24:00-我的意思是00:10大于Stopwatch2列中的23:50,那么这应该包括在图表中。在

我尽量做到:

^{pr2}$

绘图正常,但y轴上的标签是数字。我想把它们改成时间格式(HH:MM)。在


Tags: 文件数据dataframepandastime格式hh时间
1条回答
网友
1楼 · 发布于 2024-05-16 08:08:48

不确定我是否理解正确的输出,但这是你要找的东西吗?在

我将秒表1添加为datetime,这样matplotlib dates模块可以理解并帮助正确格式化它:

df['Stopwatch1'] = pd.to_datetime(df["Stopwatch1"])

from matplotlib import dates as mdates

fig, ax = plt.subplots()
ax.plot(df['Stopwatch1'])
ax.yaxis.set_major_formatter(mdates.DateFormatter("%H:%M"))

enter image description here

如果您还希望日期作为x轴,则可以将其设置为索引,因此观察之间的距离将基于日期距离。在

^{pr2}$

enter image description here

相关问题 更多 >