gpt4 book ai didi

python - 如何组合两个以列表为列的 pandas.DataFrames?

转载 作者:太空宇宙 更新时间:2023-11-04 00:37:23 25 4
gpt4 key购买 nike

我在问类似 this one 的问题但我需要一些不同的东西。我有两个 pandas.DataFrames,我需要合并它们。

这是第一个df_1:

id       attr         fruit_list
---------------------------------------
0 42 [orange, apple]
1 57 [lemon]
2 86 [kiwi]
3 33 [pineapple, pear]
4 11 [apple, lemon]

这是第二个 df_2:

id     fruit_list
--------------------------------------
0 [fruit1,]
1 [fruit4, fruit2]
2 [fruit2, fruit8]
3 [fruit3,]
4 [fruit3,]

我需要合并这两个 DataFrames 以获得如下输出:

id       attr         fruit_list
---------------------------------------------
0 42 [orange, apple, fruit1]
1 57 [lemon, fruit4, fruit2]
2 86 [kiwi, fruit2, fruit8]
3 33 [pineapple, pear, fruit3]
4 11 [apple, lemon, fruit3]

请问我怎样才能做到这一点?我看过documentation但我想不出办法。

最佳答案

如果 id 按顺序匹配,则可以添加两列:

df1.fruit_list = df1.fruit_list + df2.fruit_list
df1

enter image description here

或者如果需要合并id列,可以合并,然后添加fruit_list列:

(df1.merge(df2, on = "id")
.assign(fruit_list = lambda x: x.fruit_list_x + x.fruit_list_y)
.drop(["fruit_list_x", "fruit_list_y"], 1))

enter image description here

关于python - 如何组合两个以列表为列的 pandas.DataFrames?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43412605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com