ホームページ > バックエンド開発 > Python チュートリアル > Pandasのインデックスに基づいて2つのデータフレームをマージする方法?

Pandasのインデックスに基づいて2つのデータフレームをマージする方法?

Mary-Kate Olsen
リリース: 2024-10-31 12:30:01
オリジナル
295 人が閲覧しました

How to Merge Two DataFrames Based on Index in Pandas?

インデックスに基づいて 2 つのデータフレームを結合する

データフレームを操作する場合、多くの場合、特定の基準に基づいてそれらを結合する必要があります。この場合の目的は、2 つのデータフレーム df1 と df2 をインデックスによってマージすることです。

デフォルトでは、Python の Pandas ライブラリの merge() 関数は列ベースのマッチングを期待します。ただし、特定のパラメーターを使用してインデックスのマージが可能です。

一致するインデックスを持つ行のみが保持される内部結合を実行するには、次のコードを使用します。

<code class="python">pd.merge(df1, df2, left_index=True, right_index=True)</code>
ログイン後にコピー
ログイン後にコピー

この操作により、次の出力:

id begin conditional confidence discoveryTechnique concept
278 56 false 0.00 1 A
421 18 false 0.00 1 B

または、join() メソッドを使用して左結合を実行できます:

<code class="python">df1.join(df2)</code>
ログイン後にコピー

この結果は次のようになります:

id begin conditional confidence discoveryTechnique concept
278 56 false 0.00 1 NaN
421 18 false 0.00 1 B
2 56 false 0.00 1 NaN
5 37 false 0.20 1 NaN

最後に、concat() 関数を使用して外部結合を実現できます。

<code class="python">pd.merge(df1, df2, left_index=True, right_index=True)</code>
ログイン後にコピー
ログイン後にコピー

結果のデータフレームには、両方の入力データフレームのすべての行が含まれます。

id begin conditional confidence discoveryTechnique concept
278 56 false 0.00 1 A
421 18 false 0.00 1 B
2 56 false 0.00 1 NaN
5 37 false 0.20 1 NaN
8 36 false 0.50 1 NaN
NaN 37 false 0.30 2 NaN

マージすることを覚えておいてください。インデックスの削除は一般的な方法ではないため、データの損失や整合性の問題を避けるために慎重に検討する必要があります。インデックスによるマージが避けられない場合、提供されているメソッドは、目的の結果を達成するための柔軟なオプションを提供します。

以上がPandasのインデックスに基づいて2つのデータフレームをマージする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート