あるデータフレームを別のデータフレーム(pythonパンダ)にマップする方法は?

いつも好奇心が強い

これらの2つのデータフレームを前提として、目的の出力データフレームを取得するにはどうすればよいですか?長い道のりは、でデータフレームの行をループし、a変換したilocmap関数を使用して、xとyをそれらのスコアにマップすることです。df2dict

これは面倒なようで、大きなデータフレームで実行するには時間がかかります。よりクリーンな解決策があることを願っています。

df1:

ID    A    B    C
1     x    x    y
2     y    x    y
3     x    y    y

df2:

ID    score_x    score_y
1          20         30
2          15         17
3          18         22

出力:

ID    A     B     C
1     20    20    30
2     17    15    17
3     18    22    22

注:データフレームには多くの列があり、カテゴリとしてxとyだけではありません(おそらく20のカテゴリの領域にあります)。

ありがとう!

ステフ

マスクの使用

df1.set_index('ID', inplace=True)
df2.set_index('ID', inplace=True)

df1.mask(df1=='x',df2['score_x'],axis=0).mask(df1=='y',df2['score_y'],axis=0)

結果:

     A   B   C
ID            
1   20  20  30
2   17  15  17
3   18  22  22

多くの列があり、それらがすべて同じ方法で名前が付けられている場合は、次のようなものを使用できます。

for e in df2.columns.str.split('_').str[-1]:
     df1.mask(df1==e, df2['score_'+e], axis=0, inplace=True)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

パンダ-あるデータフレームから別のデータフレームに値をマップします

分類Dev

パンダ-あるデータフレームから別のデータフレームに値をマップします

分類Dev

あるデータフレームの月次データを別のデータフレームの日次データとマージするパンダ

分類Dev

パンダのあるデータフレームの行を別のデータフレームの列に転置する最適な方法は?

分類Dev

別のデータフレームでのルックアップに基づいてデータフレームに列を追加するPythonパンダ

分類Dev

パンダのデータフレームをプロットする方法は?

分類Dev

データフレームのある列から別の列に値をマップする方法は?

分類Dev

別のデータフレームから別のデータフレームのヘッダーに値をマップする方法

分類Dev

パンダで配列を特定のデータフレーム形式にフォーマットする方法は?

分類Dev

パンダのデータフレームを視覚的にフォーマットする方法は?

分類Dev

あるデータフレームの列値を別のデータフレームのインデックスにマップし、値を抽出します

分類Dev

列のグループをパンダデータフレームにスタックする方法は?

分類Dev

別のデータフレームからパンダのデータフレームに行を追加する

分類Dev

別のデータフレームからパンダのデータフレームに行を追加する

分類Dev

パンダのデータフレームを別のデータフレーム内に保存する

分類Dev

列間のマップを使用してパンダのデータフレームを「再配置」する方法は?

分類Dev

パンダは、あるデータフレームの行を更新して、別のデータフレームのキー列に追加します

分類Dev

条件付きで別のデータフレームにデータフレームを追加するパンダ

分類Dev

別のデータフレームに基づいてパンダデータフレームを生成する

分類Dev

パンダの別のデータフレームからデータフレームに値をマッピングする

分類Dev

パンダは列名をあるデータフレームから別のデータフレームにコピーします

分類Dev

パンダ-データフレームのサブセットが別のデータフレームにあるかどうかを確認します

分類Dev

パンダデータフレームのインデックスでマップを使用する方法

分類Dev

パンダのデータフレームをマルチインデックスデータフレームに変換する方法

分類Dev

Pythonパンダ、データフレームのNA値を別のデータフレームで検索された値に置き換える方法は?

分類Dev

別のデータフレームの条件に基づいてパンダのデータフレームにデータを入力する効率的な方法

分類Dev

パンダでは、欠測値のあるデータフレームに、同様のインデックスが指定された別のデータフレームの値をパッチする方法を教えてください。

分類Dev

パンダ:あるデータフレームから別のデータフレームに日時のタイムラインを課す

分類Dev

Pythonでパンダのデータフレームを別のデータフレームで参照するにはどうすればよいですか?

Related 関連記事

  1. 1

    パンダ-あるデータフレームから別のデータフレームに値をマップします

  2. 2

    パンダ-あるデータフレームから別のデータフレームに値をマップします

  3. 3

    あるデータフレームの月次データを別のデータフレームの日次データとマージするパンダ

  4. 4

    パンダのあるデータフレームの行を別のデータフレームの列に転置する最適な方法は?

  5. 5

    別のデータフレームでのルックアップに基づいてデータフレームに列を追加するPythonパンダ

  6. 6

    パンダのデータフレームをプロットする方法は?

  7. 7

    データフレームのある列から別の列に値をマップする方法は?

  8. 8

    別のデータフレームから別のデータフレームのヘッダーに値をマップする方法

  9. 9

    パンダで配列を特定のデータフレーム形式にフォーマットする方法は?

  10. 10

    パンダのデータフレームを視覚的にフォーマットする方法は?

  11. 11

    あるデータフレームの列値を別のデータフレームのインデックスにマップし、値を抽出します

  12. 12

    列のグループをパンダデータフレームにスタックする方法は?

  13. 13

    別のデータフレームからパンダのデータフレームに行を追加する

  14. 14

    別のデータフレームからパンダのデータフレームに行を追加する

  15. 15

    パンダのデータフレームを別のデータフレーム内に保存する

  16. 16

    列間のマップを使用してパンダのデータフレームを「再配置」する方法は?

  17. 17

    パンダは、あるデータフレームの行を更新して、別のデータフレームのキー列に追加します

  18. 18

    条件付きで別のデータフレームにデータフレームを追加するパンダ

  19. 19

    別のデータフレームに基づいてパンダデータフレームを生成する

  20. 20

    パンダの別のデータフレームからデータフレームに値をマッピングする

  21. 21

    パンダは列名をあるデータフレームから別のデータフレームにコピーします

  22. 22

    パンダ-データフレームのサブセットが別のデータフレームにあるかどうかを確認します

  23. 23

    パンダデータフレームのインデックスでマップを使用する方法

  24. 24

    パンダのデータフレームをマルチインデックスデータフレームに変換する方法

  25. 25

    Pythonパンダ、データフレームのNA値を別のデータフレームで検索された値に置き換える方法は?

  26. 26

    別のデータフレームの条件に基づいてパンダのデータフレームにデータを入力する効率的な方法

  27. 27

    パンダでは、欠測値のあるデータフレームに、同様のインデックスが指定された別のデータフレームの値をパッチする方法を教えてください。

  28. 28

    パンダ:あるデータフレームから別のデータフレームに日時のタイムラインを課す

  29. 29

    Pythonでパンダのデータフレームを別のデータフレームで参照するにはどうすればよいですか?

ホットタグ

アーカイブ