我有一个数据框,其中索引是start
和end
值的多索引。如果这些是常规列,我可以做
df["End"] - df["Start"]
但是,由于这些行是多索引,因此在尝试此操作时会收到错误KeyError: 'End'
。
我可以对从df.index.get_values()
获取的值进行for循环,将每个start
和end
添加到自己的列表中并从中创建数据帧,但这非常不受欢迎和缓慢。
答案 0 :(得分:1)
Index.get_level_values
将获得给定级别的索引值。
所以,在你的情况下:
df.index.get_level_values('End') - df.index.get_level_values('Start')