You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改sktime所用pd-multiindex数据集的instances起始索引

修改sktime用MultiIndex数据集的instances索引范围

现有用于sktime库的Pandas MultiIndex格式数据集,结构如下:

instances time points a b      
0         0            2 -2
          1            1 -1
          2            1 -2
          3           -2  2
          4           -2  2
...                   .. ..
826       9           -1  1
         10          -1  0
         11           1  0
         12          -1  1
         13           2 -2

其中instances和time points构成多级索引,需要将instances的起始索引从0改为826,结束索引变为1652(即原索引值整体加826)。

实现步骤

可以通过两种简洁的方式修改instances层级的索引值:

方法1:重新构建MultiIndex

import pandas as pd

# 假设你的数据集为df
# 提取原instances索引并加上偏移量826
new_instance_vals = df.index.get_level_values('instances') + 826
# 重新生成多级索引
new_index = pd.MultiIndex.from_arrays(
    [new_instance_vals, df.index.get_level_values('time points')],
    names=['instances', 'time points']
)
# 替换原索引
df.index = new_index

方法2:直接修改索引层级值

利用set_levels方法直接更新instances层级的数值,代码更简洁:

import pandas as pd

# 直接修改instances层级的索引值,整体加826
df.index = df.index.set_levels(
    df.index.get_levels('instances') + 826,
    level='instances'
)

验证结果

执行完上述代码后,可以通过以下命令确认索引范围是否符合要求:

# 查看instances索引的唯一值范围
print(df.index.get_level_values('instances').unique())

输出应显示从826到1652的连续索引值。

内容的提问来源于stack exchange,提问作者Coleman YU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 10:32:05