パンダ: dataframe をアルファベット順に並べ替える方法


次のメソッドを使用して、pandas DataFrame の行をアルファベット順に並べ替えることができます。

方法 1: 列をアルファベット順に並べ替える

 #sort A to Z
df. sort_values (' column1 ')

#sort Z to A
df. sort_values (' column1 ', ascending= False )

方法 2: 複数の列をアルファベット順に並べ替える

 #sort by column1 from Z to A, then by column2 from A to Z
df. sort_values ([' column1 ', ' column2 '], ascending=( False , True ))

次の例は、各メソッドを実際に使用する方法を示しています。

例 1: 列をアルファベット順に並べ替える

次のパンダ データフレームがあるとします。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Spurs', 'Lakers', 'Nuggets', 'Hawks'],
                   ' points ': [120, 108, 99, 104, 115]})

#view DataFrame
print (df)

      team points
0 Mavs 120
1 Spurs 108
2 Lakers 99
3 Nuggets 104
4 Hawks 115

次の構文を使用して、DataFrame の行をチーム名でA から Z まで並べ替えることができます。

 #sort by team name A to Z
df_sorted = df. sort_values (' team ')

#view sorted DataFrame
print (df_sorted)

      team points
4 Hawks 115
2 Lakers 99
0 Mavs 120
3 Nuggets 104
1 Spurs 108

行がチーム名 A ~ Z で並べ替えられるようになったことに注意してください。

Z から A に並べ替えることもできます。

 #sort by team name Z to A
df_sorted = df. sort_values (' team ', ascending= False )

#view sorted DataFrame
print (df_sorted)

      team points
1 Spurs 108
3 Nuggets 104
0 Mavs 120
2 Lakers 99
4 Hawks 115

また、 reset_index()関数を使用して、ソートされた DataFrame のインデックス値をリセットすることもできます。

 #sort by team name A to Z and reset index
df_sorted = df. sort_values (' team '). reset_index (drop= True )

#view sorted DataFrame
print (df_sorted)

      team points
0 Hawks 115
1 Lakers 99
2 Mavs 120
3 Nuggets 104
4 Spurs 108

例 2: 複数の列をアルファベット順に並べ替える

次のパンダ データフレームがあるとします。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' conference ': ['West', 'West', 'West', 'East', 'East'],
                   ' team ': ['Mavs', 'Spurs', 'Lakers', 'Heat', 'Hawks'],
                   ' points ': [120, 108, 99, 104, 115]})

#view DataFrame
print (df)

  conference team points
0 West Mavs 120
1 West Spurs 108
2 West Lakers 99
3 East Heat 104
4 East Hawks 115

次の構文を使用すると、DataFrame の行を会議名ごとに A から Z まで並べ替え、次にチーム名ごとに Z から A まで並べ替えることができます。

 #sort by conference name A to Z, then by team name Z to A
df_sorted = df. sort_values ([' conference ', ' team '], ascending=( True , False ))

#view sorted DataFrame
print (df_sorted)

  conference team points
3 East Heat 104
4 East Hawks 115
1 West Spurs 108
0 West Mavs 120
2 West Lakers 99

行はカンファレンス名 AZ でソートされ、次にチーム名 ZA でソートされます。

: pandas sort_values()関数の完全なドキュメントはここで見つけることができます。

追加リソース

次のチュートリアルでは、パンダで他の一般的な操作を実行する方法を説明します。

パンダ: 日付順に並べ替える方法
パンダ: 列を名前で並べ替える方法
パンダ: インデックスと列の両方で並べ替える方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です