python - Python:通过 map() 函数使用字典重命名行标签?
问题描述
例如,我有一个数据框:
df = pd.DataFrame({'A':[1,2,3],
'B':[10,20,30],
'C':[20,40,60]},
index=["Row1","Row2","Row3"])
现在的任务是使用 map() 函数和以下字典来更改索引的名称:
d = {"Row1":"FirstRow","Row2":"Secondrow","Row3":"Thirdrow"}
有人可以帮忙吗?我可以用 for 循环来做到这一点,但使用 map-function 我不知道。
解决方案
使用Index.map
- 如果没有匹配得到NaN
:
df.index = df.index.map(d)
或者如果不匹配则返回相同的值:
df.index = df.index.to_series().replace(d)
选择:
df = df.rename(d)
#explicit version, thanks Jon Clements
df = df.rename(index=d)
推荐阅读
- kubernetes - 使用 Terraform 和 GitlabCI 处理多个应用 Kubernetes 部署
- node.js - 无法使用 Wolfram Alpha API 部署到 heroku
- c++ - 在投射对象时复制与移动
- laravel - 如果关系项不在 Laravel 的请求中,则删除它
- python - 如何将字符串类型更改为字节?Python
- opengl - 如何在 OBS Studio 中使用 openGL 来组合多个源?
- python - Flask Flash 未出现在部署中
- python - 如何从 django 用户模型中获取用户名
- python - psycopg2.OperationalError:无法将主机名“joao”转换为地址:名称解析暂时失败
- python - Python:时间戳中秒后的小数位四舍五入