TimeDelta 生成 Pandas 索引
TimeDelta to generate Pandas Index
我正在处理已下载到 CSV 文件的盘中股票数据。数据包含 MO 每分钟的股票价格。为了生成数据的时间范围,我使用 pandas 函数:
pd.timedelta_range('1 days 9 hours 30 minutes', periods=len(df), freq='min')
要将两个数据帧加在一起,我使用以下方法
time = pd.DataFrame(data = df,index=pd.timedelta_range('1 days 9 hours
30 minutes', periods=len(df), freq='min'))
结果是这样
MO
1 days 09:30:00 NaN
1 days 09:31:00 NaN
1 days 09:32:00 NaN
1 days 09:33:00 NaN
1 days 09:34:00 NaN
不确定为什么我得到股票数据的 NaN 值。
原始数据 (df) 如下所示:
MO
65.67
65.74
66.064
65.99
65.8801
65.87
65.89
65.9
65.73
65.67
...
...
如果你有一个包含 MO
的数据帧 df 那么你可以使用 set_index 即
df = df.set_index(pd.timedelta_range('1 days 9 hours 30 minutes', periods=len(df), freq='min'))
输出:
MO
1 days 09:30:00 65.6700
1 days 09:31:00 65.7400
1 days 09:32:00 66.0640
1 days 09:33:00 65.9900
1 days 09:34:00 65.8801
1 days 09:35:00 65.8700
1 days 09:36:00 65.8900
1 days 09:37:00 65.9000
1 days 09:38:00 65.7300
1 days 09:39:00 65.6700
我正在处理已下载到 CSV 文件的盘中股票数据。数据包含 MO 每分钟的股票价格。为了生成数据的时间范围,我使用 pandas 函数:
pd.timedelta_range('1 days 9 hours 30 minutes', periods=len(df), freq='min')
要将两个数据帧加在一起,我使用以下方法
time = pd.DataFrame(data = df,index=pd.timedelta_range('1 days 9 hours 30 minutes', periods=len(df), freq='min'))
结果是这样
MO
1 days 09:30:00 NaN
1 days 09:31:00 NaN
1 days 09:32:00 NaN
1 days 09:33:00 NaN
1 days 09:34:00 NaN
不确定为什么我得到股票数据的 NaN 值。
原始数据 (df) 如下所示:
MO
65.67
65.74
66.064
65.99
65.8801
65.87
65.89
65.9
65.73
65.67
...
...
如果你有一个包含 MO
的数据帧 df 那么你可以使用 set_index 即
df = df.set_index(pd.timedelta_range('1 days 9 hours 30 minutes', periods=len(df), freq='min'))
输出:
MO 1 days 09:30:00 65.6700 1 days 09:31:00 65.7400 1 days 09:32:00 66.0640 1 days 09:33:00 65.9900 1 days 09:34:00 65.8801 1 days 09:35:00 65.8700 1 days 09:36:00 65.8900 1 days 09:37:00 65.9000 1 days 09:38:00 65.7300 1 days 09:39:00 65.6700