導入
ランキングを作るには並べ替え、分析用に指標を足すには新しい列を使います。どちらも頻出の加工です。
説明
sort_values("列") で並べ替えます。既定は昇順、ascending=False で降順(大きい順)です。
import pandas as pd
df = pd.DataFrame({
"name": ["Tanaka", "Suzuki", "Sato"],
"score": [80, 95, 70],
})
print(df.sort_values("score", ascending=False)) # 高い順
新しい列は、df["新しい列名"] = ... と代入するだけで追加できます。既存の列を使った計算がそのまま書けます。
import pandas as pd
df = pd.DataFrame({
"name": ["A", "B", "C"],
"price": [100, 200, 300],
"qty": [3, 1, 2],
})
df["total"] = df["price"] * df["qty"] # 金額 = 単価 × 数量
print(df)
print(df.sort_values("total", ascending=False))
df["total"] = df["price"] * df["qty"] で、売上金額の列が一気に計算されて追加されます。
やってみよう
ascending=True(または省略)にして、安い順に並べてみましょう。df["tax"] = df["price"] * 0.1 のように税額の列も足せます。
演習
上の表に total 列(price * qty)を追加し、total の大きい順に並べ替えて表示してください。
ヒント1を見る
df["total"] = df["price"] * df["qty"] のあと df.sort_values("total", ascending=False)。