インデックスが文字列である2つのパンダデータフレームを組み合わせる

エルサ

インデックスが文字列である2つのパンダデータフレームを次に示します。

df = pd.DataFrame([[1, 2], [3, 4], [5, 6], [7, 8]], columns=list('AB'))
df.index = ['Tax1','Tax2','Tax1','Tax2']

df2 = pd.DataFrame([[0, 0], [1, 1]], columns=list('AB'))
df2.index = ['Tax3','Tax3']

これはdfを与えます:

ここに画像の説明を入力してください

およびdf2の場合:

ここに画像の説明を入力してください

df2の行をdfに挿入する簡単な方法はありますか?

ここに画像の説明を入力してください

インデックス文字列を削除して数値に戻し、df.loc ['k']を使用する必要はありませんか?私が行った中で最も近いのはappendで、これは私が探しているものではなく、dfの最後に2行のdf2を配置します...

Valdi_Bo

あなたはできる:

  • トップレベルへのインデックスの追加DF1最初の2行について、および2最後の2行のを)とEGに結果を保存しwrk1
  • Add a top level index to df2 (1 for first row, and 2 for second row) and save the result in e.g. wrk2.
  • Concatenate both above DataFrames.
  • Sort by the MultiIndex and drop its top level.

The code to do it is:

wrk1 = pd.concat([df.iloc[0:2], df.iloc[2:4]], keys=(1, 2))
wrk2 = pd.concat([df2[0:1], df2[1:2]], keys=(1,2))
result = pd.concat([wrk1, wrk2]).sort_index().reset_index(level=0, drop=True)

A detail to consider: The resulting DataFrame contains non-unique entries in the index, so maybe you should leave the top level of the index (your choice).

Edit following your question

Let's look at the intermediate results:

  1. wrk1 - first 2 rows from df with index == 1 and second 2 rows with index == 2:

            A  B
    1 Tax1  1  2
      Tax2  3  4
    2 Tax1  5  6
      Tax2  7  8
    
  2. wrk2-インデックス== 1のdf2の最初の行とインデックス== 2の2番目の行

            A  B
    1 Tax3  0  0
    2 Tax3  1  1
    

結果を生成するための1つのオプションは、その「不完全な」バージョン(reset_indexなし)です。

pd.concat([wrk1, wrk2]).sort_index()

次の結果が得られます。

        A  B
1 Tax1  1  2
  Tax2  3  4
  Tax3  0  0
2 Tax1  5  6
  Tax2  7  8
  Tax3  1  1

ここでは、2つのレベルのインデックスがあります。

  • トップレベル-1または2のいずれか
  • 第2レベル-ソースDataFrameからコピー、

したがって、トップレベルから、特定の行(1番目または2番目のサブセット)の「ソース」が表示され、各行には一意のインデックスがあります。

2番目の(完全な)オプションは次のとおりです。

pd.concat([wrk1, wrk2]).sort_index().reset_index(level=0, drop=True)

それはあなたが望むものを与える:

      A  B
Tax1  1  2
Tax2  3  4
Tax3  0  0
Tax1  5  6
Tax2  7  8
Tax3  1  1

(最上位の多重指数レベルなし)。

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

パンダ:最も近いインデックスの一致によって2つのデータフレームを組み合わせる方法は?

分類Dev

2つのパンダデータフレームを2つの条件付きで組み合わせる

分類Dev

タイムスタンプ密度が異なる2つのパンダデータフレームを組み合わせる方法は?

分類Dev

パンダデータフレームの2つの列を組み合わせる

分類Dev

同じフォーマットで長さのインデックスが異なる2つのパンダデータフレームを組み合わせる方法

分類Dev

パンダデータフレームで異なるタイプの列を組み合わせる

分類Dev

シングルインデックスとマルチインデックスのパンダデータフレームを組み合わせる方法

分類Dev

マルチインデックス列の作成中にパンダのデータフレームを組み合わせる

分類Dev

パンダ:2つのインデックス列を組み合わせる

分類Dev

パンダデータフレームの列を組み合わせる

分類Dev

欠測データのあるリストと列を組み合わせてデータフレームを作成する、strsplit、インデックスなし

分類Dev

パンダ-2つのスタックされていないデータフレームを組み合わせる

分類Dev

2つの列を組み合わせてpdデータフレームにインデックスを生成する

分類Dev

2つの独立したパンダデータフレームを組み合わせてマトリックスを形成する

分類Dev

データフレームでスパース列を組み合わせるパンダ

分類Dev

パンダで一定期間にわたって異なる(ただし重複する場合もある)インデックスを持つデータフレームを組み合わせる方法は?

分類Dev

2つのパンダデータフレームをそれぞれ1つの一意の列と組み合わせ、行インデックスを保持する(Python)

分類Dev

パンダ:2つのデータフレームを組み合わせて結合する方法

分類Dev

パンダで2つのデータ列を組み合わせる方法は?

分類Dev

パンダ/ Python2つのデータフレームを重複する行と組み合わせる

分類Dev

パンダ:同じデータフレーム内の2つの行を組み合わせる

分類Dev

Pythonパンダデータフレームで発生する2つの列の一意の組み合わせの数を取得する方法

分類Dev

パンダ:2つのデータフレームを水平に組み合わせる

分類Dev

2つのデータフレームを複製して組み合わせるパンダ

分類Dev

パンダデータフレームの異なる列で最小/最大を効率的に組み合わせる

分類Dev

Pythonでパンダを使用して3つのデータフレームを組み合わせる

分類Dev

パンダで3つの複雑なデータフレームを組み合わせる方法

分類Dev

データフレーム列でintとfloatの組み合わせを抽出する方法をパンダ

分類Dev

同じインデックスパターンで2つの異なるログ行の2つのフィールドを組み合わせる

Related 関連記事

  1. 1

    パンダ:最も近いインデックスの一致によって2つのデータフレームを組み合わせる方法は?

  2. 2

    2つのパンダデータフレームを2つの条件付きで組み合わせる

  3. 3

    タイムスタンプ密度が異なる2つのパンダデータフレームを組み合わせる方法は?

  4. 4

    パンダデータフレームの2つの列を組み合わせる

  5. 5

    同じフォーマットで長さのインデックスが異なる2つのパンダデータフレームを組み合わせる方法

  6. 6

    パンダデータフレームで異なるタイプの列を組み合わせる

  7. 7

    シングルインデックスとマルチインデックスのパンダデータフレームを組み合わせる方法

  8. 8

    マルチインデックス列の作成中にパンダのデータフレームを組み合わせる

  9. 9

    パンダ:2つのインデックス列を組み合わせる

  10. 10

    パンダデータフレームの列を組み合わせる

  11. 11

    欠測データのあるリストと列を組み合わせてデータフレームを作成する、strsplit、インデックスなし

  12. 12

    パンダ-2つのスタックされていないデータフレームを組み合わせる

  13. 13

    2つの列を組み合わせてpdデータフレームにインデックスを生成する

  14. 14

    2つの独立したパンダデータフレームを組み合わせてマトリックスを形成する

  15. 15

    データフレームでスパース列を組み合わせるパンダ

  16. 16

    パンダで一定期間にわたって異なる(ただし重複する場合もある)インデックスを持つデータフレームを組み合わせる方法は?

  17. 17

    2つのパンダデータフレームをそれぞれ1つの一意の列と組み合わせ、行インデックスを保持する(Python)

  18. 18

    パンダ:2つのデータフレームを組み合わせて結合する方法

  19. 19

    パンダで2つのデータ列を組み合わせる方法は?

  20. 20

    パンダ/ Python2つのデータフレームを重複する行と組み合わせる

  21. 21

    パンダ:同じデータフレーム内の2つの行を組み合わせる

  22. 22

    Pythonパンダデータフレームで発生する2つの列の一意の組み合わせの数を取得する方法

  23. 23

    パンダ:2つのデータフレームを水平に組み合わせる

  24. 24

    2つのデータフレームを複製して組み合わせるパンダ

  25. 25

    パンダデータフレームの異なる列で最小/最大を効率的に組み合わせる

  26. 26

    Pythonでパンダを使用して3つのデータフレームを組み合わせる

  27. 27

    パンダで3つの複雑なデータフレームを組み合わせる方法

  28. 28

    データフレーム列でintとfloatの組み合わせを抽出する方法をパンダ

  29. 29

    同じインデックスパターンで2つの異なるログ行の2つのフィールドを組み合わせる

ホットタグ

アーカイブ