python - 如何用另一个数据框行重命名列名?
问题描述
我有一个列名的数据框:df1
A_01 A_02 B_03 C_04
0 0 0 1
1 2 1 0
0 1 0 3
还有,df2:
no. value
01 1103
02 1105
03 1210
04 1306
如何使用 df2 上的值重命名 df1 列,如下所示:
1103 1105 1210 1306
0 0 0 1
1 2 1 0
0 1 0 3
解决方案
你需要:
df1.columns = df1.columns.str.split('_').str[1].map(df2.set_index('no.')['value'])
输出:
1103 1105 1210 1306
0 0 0 0 1
1 1 2 1 0
2 0 1 0 3
推荐阅读
- java - Android - 如何在 Firestore 中显示创建的用户
- java - 如何使用流重用具有几乎相同实现的 Java 方法
- swift - 具有渐变文本颜色的自定义 UILabel 始终变为黑色
- php - jQuery DataTables 是在单个请求中还是使用分页从数据库中获取所有数据?
- caching - 缓存的目的是什么(tmp\_WL_user、AdminServer/tmp)?
- opencv - 具有给定字节数的浮点数是否有标准数据类型?
- android - android中的row Max如何记录数据库sqlite
- angular - Angular 服务到服务通信和“检测到循环依赖”警告
- android - 嵌套的可扩展 RecyclerView 滞后于展开和折叠,子项冻结的数量过多
- java - Java Web 应用程序无法在 Mac OSX Sierra 上使用 Netbeans 11 在 Tomcat 9 上启动