Pandas 数据框:如何合并 2 个数据框但仅聚合其中的 1 列,同时连接新行?

Pandas Dataframe: How to combine 2 dataframes but aggregate only 1 of the columns, while new rows get concatenated?

假设我有 df1

               prices    Type
name                      
ResidenceA     [1.0]     Condo
ResidenceB     [2.0]     Apartment
ResidenceC     [3.0]     Mansion

和 df2

               prices    Type
name                      
ResidenceA     [2.0]     Condo
ResidenceD     [4.0]     Mansion

我想合并 df1 和 df2,这样结果就变成了

               prices         Type
name
ResidenceA     [1.0, 2.0]     Condo
ResidenceB     [2.0]          Apartment
ResidenceC     [3.0]          Mansion
ResidenceD     [4.0]          Mansion

换句话说,由于 ResidenceA 在两个数据框中,我希望得到的价格列是两个价格的聚合,但其他列(类型)将只从第一个 df 中获取值。其他不冲突的行将被连接在一起。有没有办法在一行中实现这一目标?或者一个巧妙的方法来做到这一点会很好。

尝试:

out=df1.append(df2).reset_index().groupby('name').agg({'prices':'sum','Type':'first'})

out的输出:

           prices           Type
name        
ResidenceA  [1.0, 2.0]      Condo
ResidenceB  [2.0]           Apartment
ResidenceC  [3.0]           Mansion
ResidenceD  [4.0]           Mansion