作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一系列的形式
groupid period
1 2011-02 5
1 2011-03 6
1 2011-04 7
1 2011-05 8
我想将句点向后移动一个句点。我可以使用
创建新索引df.index.get_level_values('period').shift(-1)
但后来我不知道如何强制他们返回。set_level_values()
不存在。如何覆盖 MultiIndex 的第二级?
最佳答案
您可以使用 MultiIndex.set_levels
:
print (df.index)
MultiIndex(levels=[[1], [2011-02, 2011-03, 2011-04, 2011-05]],
labels=[[0, 0, 0, 0], [0, 1, 2, 3]],
names=['groupid', 'period'])
print (df.index.get_level_values('period').shift(-1))
PeriodIndex(['2011-01', '2011-02', '2011-03', '2011-04'],
dtype='period[M]', name='period', freq='M')
df.index.set_levels([df.index.get_level_values('groupid'),
df.index.get_level_values('period').shift(-1)], inplace=True)
print (df)
groupid period
1 2011-01 5
2011-02 6
2011-03 7
2011-04 8
Name: val, dtype: int64
关于python - 替代 set_level_values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41826893/
我有一系列的形式 groupid period 1 2011-02 5 1 2011-03 6 1
我是一名优秀的程序员,十分优秀!