ホームページ >バックエンド開発 >Python チュートリアル >ディクショナリで定義されたカスタム順序に基づいて Pandas DataFrame 列を並べ替えるにはどうすればよいですか?
辞書を使用した DataFrame の並べ替えのカスタマイズ
pandas DataFrame を使用する場合、カスタム基準に基づいてデータを並べ替える必要がある状況が発生する場合があります。 。一般的なシナリオは、事前定義された順序に基づいて月を表す値を持つ列を並べ替えることです。
これを実現するには、1 つのアプローチは、Pandas 0.15 で導入された Categorical シリーズを利用することです。月の列をカテゴリ系列に変換し、希望の順序を指定することで、定義した配置に従って並べ替えが確実に行われるようにすることができます。
たとえば、月の名前を含む「m」という名前の列を持つ DataFrame を考えてみましょう。
import pandas as pd df = pd.DataFrame([[1, 2, 'March'],[5, 6, 'Dec'],[3, 4, 'April']], columns=['a','b','m'])
カスタム順序を使用して「m」列を並べ替えるには、優先月を含む辞書を作成します順序付け:
custom_dict = {'March':0, 'April':1, 'Dec':3}
次に、'm' 列をカテゴリ系列に変換し、カスタム順序を指定します:
df['m'] = pd.Categorical(df['m'], ["March", "April", "Dec",], categories=["March", "April", "Dec"])
最後に、DataFrame を 'm' 列で並べ替えると、ここで、辞書で定義されたカスタム順序に従います:
df.sort_values("m")
このメソッドは、カスタマイズされた基準に基づいてデータを並べ替える明確で便利な方法を提供します。 DataFrame 内。
以上がディクショナリで定義されたカスタム順序に基づいて Pandas DataFrame 列を並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。