Pandas: 絶対値で行を並べ替える方法


次のメソッドを使用して、列の絶対値に基づいて pandas DataFrame の行を並べ替えることができます。

方法 1: 絶対値で並べ替える (絶対値が小さいものが最初に表示されます)

 df. reindex (df[' my_column ']. abs (). sort_values (). index )

方法 2: 絶対値で並べ替える (絶対値が大きいものを最初に表示)

 df. reindex (df[' my_column ']. abs (). sort_values (ascending= False ) .index )

次の例は、さまざまなバスケットボール選手に関する情報を含む次のパンダ データフレームで各メソッドを実際に使用する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' over_under ': [4, -9, 2, 0, 1, 12, -4, -5]})
                   
#view DataFrame
print (df)

  player over_under
0 to 4
1 B -9
2 C 2
3 D 0
4 E 1
5 F 12
6 G -4
7 a.m. -5

例 1: 絶対値でソート (絶対値が小さい順に表示)

次の構文を使用して、 over_under列の絶対値に基づいて DataFrame の行を並べ替えることができます。

 #sort DataFrame based on absolute value of over_under column
df_sorted = df. reindex (df[' over_under ']. abs (). sort_values (). index )

#view sorted DataFrame
print (df_sorted)

  player over_under
3 D 0
4 E 1
2 C 2
0 to 4
6 G -4
7 a.m. -5
1 B -9
5 F 12

行は、 over_under列の最小の絶対値から最大の絶対値までソートされることに注意してください。

例 2: 絶対値による並べ替え (絶対値が大きいものを最初に表示)

次の構文を使用して、 over_under列の絶対値に基づいて DataFrame の行を並べ替えることができます。

 #sort DataFrame based on absolute value of over_under column
df_sorted = df. reindex (df[' over_under ']. abs (). sort_values (ascending= False ) .index )

#view sorted DataFrame
print (df_sorted)

  player over_under
5 F 12
1 B -9
7 a.m. -5
0 to 4
6 G -4
2 C 2
4 E 1
3 D 0

行は、 over_under列の最大の絶対値から最小の絶対値までソートされることに注意してください。

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

追加リソース

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

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

コメントを追加する

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