gpt4 book ai didi

python - 如何根据 python 中的几个值对两个数据帧进行分组?

转载 作者:太空宇宙 更新时间:2023-11-03 17:11:12 24 4
gpt4 key购买 nike

我有两个相似的数据帧UU1

U
ID1 ID2 Time A Friends Distance
0 John Tom 2 1 4
1 Alex John 2 0 2
2 Alex Paul 5 1 3
3 Frank Richard 1 0 5

U1
ID1 ID2 Time B Friends Distance
0 John Richard 2 1 0
1 Alex Frank 2 0 1
2 Alex Paul 3 1 3
3 Frank Richard 2 0 5

我想要一个基于时间A时间B结合ID1ID2的数据框:

U2
ID1 ID2 Time A Time B Friends Distance
0 John Tom 2 0 1 4
1 Alex John 2 0 0 2
2 Alex Paul 5 3 1 5
3 Frank Richard 1 2 0 5
4 John Richard 0 2 1 3
5 Alex Frank 0 2 0 1

最佳答案

IIUC您可以使用mergecombine_first 。最后删除带有后缀 _new 的列并填充 0 而不是 NaN

U2 = pd.merge(U,U1, on=['ID1', 'ID2'], how='outer', suffixes=('_new', ''))
U2 = U2.combine_first(U)
U2 = U2.drop(['Friends_new','Distance_new'], axis=1).fillna(0)
U2 = U2[['ID1', 'ID2', 'Time A', 'Time B', 'Friends', 'Distance']]
print U2
ID1 ID2 Time A Time B Friends Distance
0 John Tom 2 0 1 4
1 Alex John 2 0 0 2
2 Alex Paul 5 3 1 3
3 Frank Richard 1 2 0 5
4 John Richard 0 2 1 0
5 Alex Frank 0 2 0 1

关于python - 如何根据 python 中的几个值对两个数据帧进行分组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34069613/

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