我正在与期货时间序列合作,交易日在17:00:00 CT开始,到第二天15:15:00 CT结束。为了解释这一点,我对索引进行了更改,但是,在转动数据框时,它会忽略此更改....
让我们看一下例子:
boolean b = true;
System.out.println(!b); // outputs: false
System.out.println(!!b); // outputs: true
b = !b; // first switch: b is false now
b = !b; // second switch: b is true now
完成所有这些后,数据帧的形状和格式都是我想要的,但第一列对应于当天的第一个时间戳是00:00:00而不是17:00:00,正如我打算用的那样索引修改。
我该如何解决这个问题?
答案 0 :(得分:0)
旋转后,列按时间顺序排序。但你可以重新排序它们。比如说,列已经格式化了,所以我们寻找' 1700':
pos = np.nonzero(df_2.columns == '1700')[0][0]
(np.nonzero
返回一个数组元组,因此那些加倍[0]
)。然后
new_cols = df_2.columns[pos:].append(df_2.columns[:pos])
df_2 = df_2.reindex(columns = new_cols)