導入
表から必要な部分だけを取り出せてこそ、分析が始まります。列・行の取り出し方を整理しましょう。
説明
列は df["列名"]、複数列は df[["列A", "列B"]] のようにリストで指定します。
import pandas as pd
df = pd.DataFrame({
"name": ["Tanaka", "Suzuki", "Sato"],
"age": [28, 34, 22],
"score": [80, 95, 70],
})
print(df["name"]) # 1列(Series)
print(df[["name", "score"]]) # 2列(DataFrame)
行は df.loc[] や df.iloc[] で取り出します。iloc は行番号(0始まり)、loc はインデックスのラベルで指定します。
import pandas as pd
df = pd.DataFrame({
"name": ["Tanaka", "Suzuki", "Sato"],
"score": [80, 95, 70],
})
print(df.iloc[0]) # 0行目(先頭)
print(df.loc[1, "name"]) # 1行目のname
print(df["score"].iloc[2]) # score列の3番目の値
df.iloc[0] は先頭の1行を丸ごと、df.loc[1, "name"] は「1行目の name 列」というピンポイント指定です。
やってみよう
df.iloc[1] で2行目を取り出しましょう。df[["name", "age"]](age 列を足した表で)のように、列の順番を入れ替えて取り出すこともできます。
演習
上の df から score 列だけを取り出して表示してください。
ヒント1を見る
df["score"] と書きます。