合并数据帧而不匹配列

时间:2016-08-11 14:34:51

标签: python pandas dataframe merge cross-join

我有以下两个数据帧:

df1:
column_01   value_01
aaa         1
bbb         2

df2:
column_02   value_02
ccc         3
ddd         4

我需要合并数据框,以便df1中的行重复,以便为df2中的每一行包含一行。输出如下:

column_01   value_01   column_02   value_02
aaa         1          ccc         3
aaa         1          ddd         4
bbb         2          ccc         3
bbb         2          ddd         4

我尝试了mergejoin的各种变体,但无法使其正常工作,因为我没有匹配列值,我故意尝试复制df1行每个df2行。

1 个答案:

答案 0 :(得分:2)

您可以使用创建具有某些标量值的新列,然后使用merge这些列:

df1['one'] = 1
df2['one'] = 1
print (pd.merge(df1, df2, on='one').drop('one', axis=1))
  column_01  value_01 column_02  value_02
0       aaa         1       ccc         3
1       aaa         1       ddd         4
2       bbb         2       ccc         3
3       bbb         2       ddd         4