更改 DataFrame 中的多索引值
这是可能的 DataFrame(两列:name
和 age
和两个索引:player_id
和 season_id
)。
name | Age | ||
---|---|---|---|
player_id | season_id | ||
991 | 28 | Fabio | 33 |
1028 | 28 | Luigi | 25 |
我想以这种方式更改 MultiIndex 内的值:
姓名 | 年龄 | ||
---|---|---|---|
球员 ID | 赛季 id | ||
991 | 26 | Fabio | 33 |
1028 | 28 | Luigi | 25 |
我尝试了不同的方法,但没有任何效果。
df.loc[[(991,28)]].index.set_levels = (991,26)
df.loc[[(991,28)]].index.set_levels([991,26], inplace=正确)
df.loc[[(991,28)]].index = df.loc[[ (991,28)]].index.set_levels([991,26])
有人建议吗?
This is may DataFrame (two columns : name
and age
and two indices : player_id
and season_id
).
name | age | ||
---|---|---|---|
player_id | season_id | ||
991 | 28 | Fabio | 33 |
1028 | 28 | Luigi | 25 |
I want to change a value inside the MultiIndex in this way:
name | age | ||
---|---|---|---|
player id | season id | ||
991 | 26 | Fabio | 33 |
1028 | 28 | Luigi | 25 |
I've tried different ways without any effect.
df.loc[[(991,28)]].index.set_levels = (991,26)
df.loc[[(991,28)]].index.set_levels([991,26], inplace=True)
df.loc[[(991,28)]].index = df.loc[[(991,28)]].index.set_levels([991,26])
Has someone some suggests?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将列表理解与
if-else
结合使用并重新创建df.index
:Use list comprehension with
if-else
and recreatedf.index
:这段代码应该可以工作:
this code should work either: