python - 如何将数据框转换为关于类别的元组列表?
问题描述
我有以下问题。我想根据类别将数据框转换为元组列表。请看下面的简单代码:
data = {'product_id': ['5', '7', '8', '5', '30'], 'id_customer': ['1', '1', '1', '3', '3']}
df = pd.DataFrame.from_dict(data)
#desired output is:
result = [('5', '7', '8'), ('5', '30')]
请问我该怎么做?这个问题对我没有帮助:Convert pandas dataframe into a list of unique tuple
解决方案
GroupBy.agg
与喜欢一起使用tuple
:
print (df.groupby('id_customer', sort=False)['product_id'].agg(tuple).tolist())
print (df.groupby('id_customer', sort=False)['product_id'].apply(tuple).tolist())
print (list(df.groupby('id_customer', sort=False)['product_id'].agg(tuple)))
print (list(df.groupby('id_customer', sort=False)['product_id'].apply(tuple)))
[('5', '7', '8'), ('5', '30')]
推荐阅读
- azure-ad-b2c - Azure AD B2C 字符串格式声明
- wordpress - WordPress 在菜单中发布存档链接不可添加
- sql - 存储过程中的更新
- php - 如何从单行的 mysql 数据库中显示我的照片
- r - 如何展平R中列表列表中的一个元素
- node.js - 运行时错误与 Node 和 Ruby on Rails 相关
- gitlab - Gitlab 状态 API:太长(最多 255 个字符)
- mysql - 同一列上的两个约束导致的重复外键约束
- ios - 适用于 iOS 的 Google AdMob 新 SDK 设置:SKAdNetworkItems、NSUserTrackingUsageDescription、ATTrackingManager。准则 5.1.2 - 法律 - 隐私 - 数据使用
- r - 回归线的ggplot混合