問題

2つのパンダデータフレームがあり、2番目のデータフレーム行を各最初のデータフレーム行と結合したいと考えています。

最初:

 val1 val2
1    2
0    0
2    1
 

2番目:

 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
 

  同じタグがついた質問を見る

pythonnumpypandas