我试图找出在连接值时是否可以删除数据框中的重复项
例:
df key v1 v2 0 1 n/a a 1 2 n/a b 2 3 n/a c 3 2 n/a d 4 3 n/a e
输出应该是这样的:
df_out key v1 v2 0 1 n/a a 1 2 n/a b,d 2 3 n/a c,e
我尝试使用df.drop_duplicates()和一些循环来保存v2列值,但什么也没有。我正在尝试通过使用Pandas使其美观大方,干净利落。
有人知道大熊猫可以做到这一点吗?
假设您有两列,这应该很容易。使用groupby+ agg。v1应该由first和v2合并','.join。
groupby
agg
v1
first
v2
','.join
df key v1 v2 0 1 NaN a 1 2 NaN b 2 3 NaN c 3 2 NaN d 4 3 NaN e (df.groupby('key') .agg({'v1' : 'first', 'v2' : ','.join}) .reset_index() .reindex(columns=df.columns)) key v1 v2 0 1 NaN a 1 2 NaN b,d 2 3 NaN c,e
如果您有多个需要相同聚合的此类列,请构建一个称为的agg dictf并将其传递给agg。
f