首页 > 解决方案 > 使用熊猫的时间序列数据更改数据框的问题

问题描述

我有这个数据框:

数据框

事件时间是特定时间,日期时间列是每 10 分钟一次,具有特定价格。对于每种证券,在活动时间后 4 小时和活动前 2 小时持续。我有成千上万的证券。我想创建一个 x 轴从 -12 到 24 开始的图,这是事件时间到 -2 小时到 4 小时之后的时间。y 轴价格变化。为了安全起见,有什么方法可以在 python 中同步日期时间。

标签: pythonpandasdatetimetime-series

解决方案


如果您想简单地绘制数据熊猫应该为您处理您的日期时间,假设它们是日期时间格式而不是字符串。

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

event_time = pd.to_datetime('2024-04-28T07:52:00')
date_time = pd.date_range(event_time, periods=24, freq=pd.to_timedelta(10, 'minute'))
df = pd.DataFrame({'date_time': date_time, 'change': np.random.normal(size=len(date_time))})

ax = df.plot(x='date_time', y='change')
plt.show()

图像1

但是,如果您想从 x 轴上删除特定时间并从零开始计数,您可以使用索引作为 x 轴:

df['_index'] = df.index
ax = df.plot(x='_index', y='change')
plt.show()

图2


推荐阅读