gpt4 book ai didi

python - Pandas dataframe 笛卡尔连接

转载 作者:太空狗 更新时间:2023-10-29 22:29:49 27 4
gpt4 key购买 nike

我有两个 pandas 数据框,我想将每个第二个数据框行与每个第一个数据框行组合起来,如下所示:

首先:

val1 val2
1 2
0 0
2 1

第二个:

l1 l2
a a
b c

结果(预期结果大小 = len(first) * len(second)):

val1 val2 l1 l2
1 2 a a
1 2 b c
0 0 a a
0 0 b c
2 1 a a
2 1 b b

它们没有相同的索引。

问候,西考

最佳答案

创建代理键以在它们之间进行笛卡尔连接...

import pandas as pd

df1 = pd.DataFrame({'A': [1, 0, 2],
'B': [2, 0, 1],
'tmp': 1})

df2 = pd.DataFrame({'l1': ['a', 'b'],
'l2': ['a', 'c'],
'tmp': 1})

print pd.merge(df1, df2, on='tmp', how='outer')

结果:

   A  B  tmp l1 l2 
0 1 2 1 a a
1 1 2 1 b c
2 0 0 1 a a
3 0 0 1 b c
4 2 1 1 a a
5 2 1 1 b c

关于python - Pandas dataframe 笛卡尔连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32440716/

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