ssh*_*270 1 python dictionary dataframe pandas
我有一个名为 df 的 Pandas 数据框:
1 2 3 4 5 6 7 8 9 10
dog jumps 1 1 1 1 1 1 0 1 1 1
fox 1 1 1 1 1 1 0 0 1 1
the 1 1 1 1 1 1 1 0 1 1
dog 1 1 1 1 1 1 0 0 1 1
over 1 1 1 1 1 1 0 0 1 1
fox jumps 1 1 1 1 1 1 0 1 1 1
fox 1 1 1 1 1 1 0 0 1 1
the 1 1 1 1 1 1 1 0 1 1
dog 1 1 1 1 1 1 0 0 1 1
over 1 1 1 1 1 1 0 0 1 1
jumps jumps 1 1 1 1 1 1 0 0 1 0
fox 1 1 1 1 1 1 1 0 1 0
the 1 0 1 1 1 1 0 0 1 0
dog 1 1 1 1 1 1 1 0 1 0
over 1 0 1 1 1 0 0 1 1 0
over jumps 1 1 0 1 0 1 1 0 1 0
fox 1 1 1 1 1 1 0 0 1 0
the 1 0 1 1 1 0 0 1 1 0
dog 1 1 1 1 1 1 0 0 1 0
over 1 1 1 1 1 1 0 0 1 0
the jumps 1 1 0 1 1 1 0 0 1 0
fox 1 1 1 1 1 1 0 1 1 0
the 1 1 1 1 1 1 0 0 1 0
dog 1 1 1 1 1 1 0 1 1 0
over 1 1 0 1 0 1 1 0 1 0
Run Code Online (Sandbox Code Playgroud)
我有以下字典:
dic = {'dog': 1, 'fox': 1, 'the': 2, 'over': 2, 'jumps': 0}
Run Code Online (Sandbox Code Playgroud)
我想用它们各自的 dic 值替换索引的值。
我尝试了以下方法:
df.index.levels[0][0] = 'integer value'
Run Code Online (Sandbox Code Playgroud)
但这不起作用,它给了我错误:
类型错误:索引不支持可变操作
另外,熊猫重命名功能也不能正常工作
关于如何以最有效和最干净的方式做到这一点的任何想法。任何建议将不胜感激。
我觉得rename还是工作
df.rename(index=dic)
Out[1311]:
1 2 3 4 5 6 7 8 9 10
1 0 1 1 1 1 1 1 0 1 1 1
1 1 1 1 1 1 1 0 0 1 1
2 1 1 1 1 1 1 1 0 1 1
1 1 1 1 1 1 1 0 0 1 1
2 1 1 1 1 1 1 0 0 1 1
0 1 1 1 1 1 1 0 1 1 1
1 1 1 1 1 1 1 0 0 1 1
2 1 1 1 1 1 1 1 0 1 1
1 1 1 1 1 1 1 0 0 1 1
2 1 1 1 1 1 1 0 0 1 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1563 次 |
| 最近记录: |