python - 从另一个数据框创建数据框
问题描述
我有一个如下所示的数据框
Index Batch Name
0 1 Jon
1
2 2 Adam
3
4 3 Voges
5
6 4 Jon
我想从这个数据框创建另一个数据框,将批号组合在一起
Batch Name/Batches
1 Jon(1,4)
2 Adam(2)
3 Voges(3)
4 Jon(1,4)
我该如何做到这一点,我应该从现有的 DF 创建一个新列表或ordereddict,然后将其转换为另一个 DF,或者这可以即时完成。
更新:在它们之间用空格编辑
解决方案
In [33]: df['Name/Batches'] = \
df['Name'] + '(' + \
df.groupby('Name')['Batch'].transform(lambda x: x.astype(str).str.cat(sep=',')) \
+ ')'
In [34]: df
Out[34]:
Batch Name Name/Batches
0 1 Jon Jon(1,4)
1 2 Adam Adam(2)
2 3 Voges Voges(3)
3 4 Jon Jon(1,4)
推荐阅读
- c++ - 限制可变参数模板类中的构造函数访问
- eclipse-rcp - 运行导出的基于 Xtend 的应用程序
- amazon-mws - 亚马逊 mws 产品称重并确认订单
- java - JSF h:commandlink 在更新版本后不起作用
- authentication - 没有从 JWT 令牌创建用户身份
- redis - Redis 截断大于 4087 字节的值
- javascript - TypeError:无法读取未定义的resolveModel react-redux-form的属性'0'
- spring-boot - Spring Boot 中的 JDBCTemplate 查询错误
- javascript - 使用 csv 文件从地址获取纬度和经度
- firebase - 仅用于元数据更新的 Firebase 存储规则