Pandas でデータフレーム インデックスを並べ替え/並べ替える方法は?

ナウオックス

私はいくつかのデータを取得しました:

# 3 Experiments 0,1 and 2.
# 2 Setups 'foo' and 'bar'
# 3 Measured parameters 'a', 'b' and 'c'
d = {0: {'foo': {'a': 12.68, 'b': 54.44, 'c': 83.98},
         'bar': {'a': 11.73, 'b': 53.34, 'c': 82.93}},
     2: {'foo': {'a': 11.12, 'b': 57.99, 'c': 81.05},
         'bar': {'a': 10.05, 'b': 56.12, 'c': 80.01}},
     1: {'foo': {'a': 13.41, 'b': 54.32, 'c': 82.74},
         'bar': {'a': 12.77, 'b': 53.15, 'c': 82.01}}}      

パンダにインポートしました

ds = (pd.DataFrame.from_dict(d, orient='index')
      .stack().apply(pd.Series)
      .rename_axis(['experiment', 'setup']))

これはうまく表示されます:

                      a      b      c
experiment setup
0          foo    12.68  54.44  83.98
           bar    11.73  53.34  82.93
2          foo    11.12  57.99  81.05
           bar    10.05  56.12  80.01
1          foo    13.41  54.32  82.74
           bar    12.77  53.15  82.01

実験が間違った順序で行われており、セットアップもソートされていないことがわかります。したがって、次のようにインデックスを並べ替えて表示したいと思います。

                      a      b      c
experiment setup
0          bar    11.73  53.34  82.93
           foo    12.68  54.44  83.98
1          bar    12.77  53.15  82.01
           foo    13.41  54.32  82.74
2          bar    10.05  56.12  80.01
           foo    11.12  57.99  81.05

sortsort_indexsort_valuesまたはを使用して多くのことを試しましたsortlevelが、機能していないようです。また、 を使用reset_indexしてすべてをフラット化しようとしましたがsortを使用して再試行しましたが、機能しません。

必要に応じてデータフレームをソートまたは並べ替える方法は?

解放する

sort_index期待どおりに機能しないのは非常に奇妙ですが、インデックスをリセットし、値をソートし、インデックスを元に戻すことで、期待どおりの出力を得ることができました。

ds = ds.reset_index()\
       .sort_values(by=['experiment','setup'])\
       .set_index(['experiment','setup'])

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

インデックスでPandas DataFrameを並べ替える方法

分類Dev

Pandasデータフレーム列インデックスを日付で並べ替える

分類Dev

pandasデータフレームインデックスを並べ替え/並べ替える(必ずしも並べ替える必要はありません)にはどうすればよいですか?

分類Dev

pandasデータフレームのマルチインデックスレベルでの並べ替え

分類Dev

別のインデックスの順序によるPandasデータフレームの並べ替え

分類Dev

Pandasデータフレームのリストに基づいてインデックス付きの行を並べ替える方法

分類Dev

Pandasデータフレームを日付で並べ替え

分類Dev

Pandasデータフレーム列のリストを並べ替える

分類Dev

Pandasデータフレームグループを最小インデックス番号で並べ替えてから、3番目の列に基づいてグループ内の他のすべての列を並べ替えます

分類Dev

pandasDataFrameを別のデータフレームの列で並べ替える-pandas

分類Dev

pandasデータフレームの各行を並べ替え、行の並べ替えられた値に基づいて列インデックスを返す方法

分類Dev

Pandasデータフレーム:基準1から行インデックスを取得し、基準2で並べ替えます

分類Dev

pandasデータフレームをアンスタックするときに列を並べ替えないでください

分類Dev

Pandasデータフレームをクラスラベルまたは特定の列で並べ替え/グループ化する方法

分類Dev

Pandas DataframeMutliインデックスをレベルと列の値で並べ替える

分類Dev

文字列のリストを使用してPandasデータフレームの列を並べ替える方法

分類Dev

Pandasデータフレームの行のサブセットを並べ替える方法

分類Dev

Pandas dfは、整数インデックスリストに従って行と列を並べ替えます

分類Dev

pandasデータフレームの特定の行の値を並べ替える方法は?

分類Dev

pandasデータフレームは列を並べ替えません

分類Dev

Pandasデータフレームのデータをアルファベット順に並べ替える

分類Dev

Python-Pandasデータフレームを2回並べ替える

分類Dev

Pandas .pivot_table()は、インデックスを時系列に並べ替えます

分類Dev

pandasデータフレームの列の並べ替え

分類Dev

pandasデータフレームの各行を並べ替えて、代わりにインデックスを取得するにはどうすればよいですか?

分類Dev

pandasデータフレームでノードを昇順で並べ替える

分類Dev

Python Pandas Dropは、dropを使用するときにデータフレームを並べ替えます

分類Dev

Pandasデータフレームでgroupbyと集計の後に並べ替えを行う方法

分類Dev

パンダ:データフレームを列とインデックスで並べ替える方法

Related 関連記事

  1. 1

    インデックスでPandas DataFrameを並べ替える方法

  2. 2

    Pandasデータフレーム列インデックスを日付で並べ替える

  3. 3

    pandasデータフレームインデックスを並べ替え/並べ替える(必ずしも並べ替える必要はありません)にはどうすればよいですか?

  4. 4

    pandasデータフレームのマルチインデックスレベルでの並べ替え

  5. 5

    別のインデックスの順序によるPandasデータフレームの並べ替え

  6. 6

    Pandasデータフレームのリストに基づいてインデックス付きの行を並べ替える方法

  7. 7

    Pandasデータフレームを日付で並べ替え

  8. 8

    Pandasデータフレーム列のリストを並べ替える

  9. 9

    Pandasデータフレームグループを最小インデックス番号で並べ替えてから、3番目の列に基づいてグループ内の他のすべての列を並べ替えます

  10. 10

    pandasDataFrameを別のデータフレームの列で並べ替える-pandas

  11. 11

    pandasデータフレームの各行を並べ替え、行の並べ替えられた値に基づいて列インデックスを返す方法

  12. 12

    Pandasデータフレーム:基準1から行インデックスを取得し、基準2で並べ替えます

  13. 13

    pandasデータフレームをアンスタックするときに列を並べ替えないでください

  14. 14

    Pandasデータフレームをクラスラベルまたは特定の列で並べ替え/グループ化する方法

  15. 15

    Pandas DataframeMutliインデックスをレベルと列の値で並べ替える

  16. 16

    文字列のリストを使用してPandasデータフレームの列を並べ替える方法

  17. 17

    Pandasデータフレームの行のサブセットを並べ替える方法

  18. 18

    Pandas dfは、整数インデックスリストに従って行と列を並べ替えます

  19. 19

    pandasデータフレームの特定の行の値を並べ替える方法は?

  20. 20

    pandasデータフレームは列を並べ替えません

  21. 21

    Pandasデータフレームのデータをアルファベット順に並べ替える

  22. 22

    Python-Pandasデータフレームを2回並べ替える

  23. 23

    Pandas .pivot_table()は、インデックスを時系列に並べ替えます

  24. 24

    pandasデータフレームの列の並べ替え

  25. 25

    pandasデータフレームの各行を並べ替えて、代わりにインデックスを取得するにはどうすればよいですか?

  26. 26

    pandasデータフレームでノードを昇順で並べ替える

  27. 27

    Python Pandas Dropは、dropを使用するときにデータフレームを並べ替えます

  28. 28

    Pandasデータフレームでgroupbyと集計の後に並べ替えを行う方法

  29. 29

    パンダ:データフレームを列とインデックスで並べ替える方法

ホットタグ

アーカイブ