本文へスキップ
BecomeCoder

Pythonデータ分析コース · 第3章 pandas ― 表データの基本 · レッスン11

列と行を取り出す ― [] / loc / iloc

ブラウザで完結

導入

表から必要な部分だけを取り出せてこそ、分析が始まります。列・行の取り出し方を整理しましょう。

説明

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"] と書きます。

実際に動かしてみよう

下のエディタにPythonを書いて「実行」を押すと、numpy・pandas・matplotlib が使える本物のPython(Pyodide)で出力とグラフが表示されます。初回だけ読み込みに少し時間がかかります。本文の例をそのまま試したり、書き換えたりしてみましょう(グラフ内の文字は日本語だと表示が崩れるため英字で書きます)。

Python — ライブラリ付きで実行(Pyodide)

numpy / pandas / matplotlib が使える本物のPython(Pyodide)を読み込みます。初回のみ読み込みに少し時間がかかります(以降はブラウザにキャッシュされます)。
スクロールして表示された時点でも自動で読み込まれます。