df1とdf2の2つのパンダデータフレームがあります。df1の1つの列とdf2の1つの列を使用して、すべての組み合わせを含むデータフレームdf3を作成したいと思います。これを非効率的に行うための擬似コードは、次のようになります。
df3 = []
for i in df1:
for j in df2:
df3.append(i + j) # where i + j is the row with the combined cols from df1 and df2
df1の形式は次のとおりです。
df1_id other_data_1 other_data_2
1 0 1
2 1 5
df2:
df2_id other_data_3 other_data_4
1 0 1
3 2 2
そして、目標はdf3のこの出力を取得することです。
df1_id df2_id other_data_1 other_data_2 other_data_3 other_data_4
1 1 0 1 0 1
1 3 0 1 2 2
2 1 1 5 0 1
2 3 1 5 2 2
2つのデータフレーム間に共通のキーを設定し、以下を使用しますpd.merge
。
df1['key'] = 1
df2['key'] = 1
キー列をマージして削除します。
df3 = pd.merge(df1,df2,on='key').drop('key',axis=1)
df3
出力:
df1_id other_data_1 other_data_2 df2_id other_data_3 other_data_4
0 1 0 1 1 0 1
1 1 0 1 3 2 2
2 2 1 5 1 0 1
3 2 1 5 3 2 2
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加