Pandas でデカルト積を取得する方法
Pandas では、DataFrame は表形式のデータ構造です。データ分析には、複数の DataFrame に対する操作の実行が必要になることがよくあります。このような操作の 1 つがデカルト積です。これは、2 つの DataFrame のすべての行を新しい DataFrame に結合します。
デカルト積のマージ (Pandas >= 1.2)
Pandas の merge 関数は、デカルト積を取得する効率的な方法を提供します。バージョン 1.2 以降の場合は、次を使用します。
df1 = DataFrame({'col1': [1, 2], 'col2': [3, 4]}) df2 = DataFrame({'col3': [5, 6]}) df1.merge(df2, how='cross')
これは、df1 と df2 の行のすべての組み合わせを含む新しい DataFrame を返します。
デカルト積のマージ (Pandas <) ; 1.2)
以前のバージョンの Pandas の場合、各行に繰り返されるキーがある場合でも、マージを使用できます。このキーを使用すると、行をデカルト積に合わせて配置できます:
df1 = DataFrame({'key': [1, 1], 'col1': [1, 2], 'col2': [3, 4]}) df2 = DataFrame({'key': [1, 1], 'col3': [5, 6]}) merge(df1, df2, on='key')[['col1', 'col2', 'col3']]
以上がPandasでDataFrameのデカルト積を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。