【发布时间】:2022-11-03 18:35:27
【问题描述】:
我有一个数据框。
import pandas as pd
import numpy as np
df1 = pd.DataFrame({'vin':['aaa','aaa','aaa','bbb','ccc','ccc','ddd','eee','eee','fff'],
'module':['ABS','ABS','IPMA','BCCM','HPOC','ABS','ABS','HPOC','ABS','ABS']})
我想连接列的所有值模块关于列葡萄酒.
以下是我的预期输出。
df1 = pd.DataFrame({'vin':['aaa','aaa','aaa','bbb','ccc','ccc','ddd','eee','eee','fff'],
'module':['ABS','ABS','IPMA','BCCM','HPOC','ABS','ABS','HPOC','ABS','ABS'],
'New_module':['ABS-ABS-IPMA','ABS-ABS-IPMA','ABS-ABS-IPMA','BCCM','HPOC-ABS','HPOC-ABS','ABS','HPOC-ABS','HPOC-ABS','ABS']})
我尝试了一种方法,其中我必须复制数据框并应用下面的代码。
df_merge = pd.merge(df2, df1.groupby(['vin'])['module'].apply(list), on ='vin', how ='left')
df_merge['module'] = df_merge['module'].astype('str').str.replace("\[|\]|\'| ","")
df_merge
任何简单的代码来获得我想要的输出?
【问题讨论】:
标签: python pandas group-by apply