pandasデータフレームの列の順序を設定する 質問する

pandasデータフレームの列の順序を設定する 質問する

個人的な好みに基づいて、パンダデータフレームの列を並べ替える方法はありますか(つまり、アルファベット順や数字順ではなく、特定の規則に従うようなもの)。

簡単な例:

frame = pd.DataFrame({
        'one thing':[1,2,3,4],
        'second thing':[0.1,0.2,1,2],
        'other thing':['a','e','i','o']})

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

   one thing other thing  second thing
0          1           a           0.1
1          2           e           0.2
2          3           i           1.0
3          4           o           2.0

しかし、代わりに私はこれを望みます:

   one thing second thing  other thing
0          1           0.1           a
1          2           0.2           e
2          3           1.0           i
3          4           2.0           o

(このケースに特有のものではなく、一般的な解決策を提供してください。よろしくお願いします。)

ベストアンサー1

列名を入力して順序を自分で選択するだけです。二重括弧に注意してください。

frame = frame[['column I want first', 'column I want second'...etc.]]

おすすめ記事