Python - DataFrameでソートと反転を行う

DataFrameではソートや反転を容易に行うことができます。

ソート

ソートするにはDataFrameのsort_values関数を使います。

[コード]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import pandas as pd

# 身長・体重・性別のデータフレームを作成
tbl = pd.DataFrame({
'weight': [80.0, 70.4, 65.5, 45.9, 51.2, 72.5],
'height': [170, 180, 155, 143, 154, 160],
'gender': ['f', 'm', 'm', 'f', 'f', 'm']
})

print('身長をキーにソート')
print(tbl.sort_values(by='height'))
print()

print('体重を降順でソート')
print(tbl.sort_values(by='weight', ascending=False))

実行結果は下記のとおりです。

[実行結果]

身長をキーにソート
   weight  height gender
3    45.9     143      f
4    51.2     154      f
2    65.5     155      m
5    72.5     160      m
0    80.0     170      f
1    70.4     180      m

体重を降順でソート
   weight  height gender
0    80.0     170      f
5    72.5     160      m
1    70.4     180      m
2    65.5     155      m
4    51.2     154      f
3    45.9     143      f

反転

反転するにはDataFrameのT属性を参照します。

[コード]

1
2
3
4
5
6
7
8
9
10
11
import pandas as pd

tbl = pd.DataFrame([
['A', 'B', 'C'],
['D', 'E', 'F'],
['G', 'H', 'I']
])

print(tbl)
print('----')
print(tbl.T)

実行結果は下記のとおりです。

[実行結果]

   0  1  2
0  A  B  C
1  D  E  F
2  G  H  I
----
   0  1  2
0  A  D  G
1  B  E  H
2  C  F  I