本文へスキップ
BecomeCoder

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

DataFrame ― 表を作る

ブラウザで完結

導入

DataFrame は複数の列(Series)が横に並んだ「表」です。データ分析の主役なので、作り方と全体像のつかみ方に慣れましょう。

説明

辞書を渡すと、キーが列名、値が各列の中身になります。

import pandas as pd

df = pd.DataFrame({
    "name": ["Tanaka", "Suzuki", "Sato", "Ito"],
    "age": [28, 34, 22, 41],
    "score": [80, 95, 70, 88],
})
print(df)

表を受け取ったら、まず全体像をつかむのが定石です。次のメソッドをよく使います。

import pandas as pd

df = pd.DataFrame({
    "name": ["Tanaka", "Suzuki", "Sato", "Ito"],
    "age": [28, 34, 22, 41],
    "score": [80, 95, 70, 88],
})
print("--- 先頭2行 ---")
print(df.head(2))     # 先頭を確認
print("--- 形 ---")
print(df.shape)       # (行数, 列数)
print("--- 統計まとめ ---")
print(df.describe())  # 数値列の統計を一括表示

df.describe() は、件数・平均・標準偏差・最小最大などを一気に出してくれる、とても便利な要約です。

やってみよう

df.tail(2) で末尾2行を見てみましょう。df.columns で列名の一覧、df.dtypes で各列の型が分かります。

演習

city(Tokyo・Osaka・Nagoya)と population(1400・880・230)の2列を持つ DataFrame を作り、df.describe() の結果を表示してください。

ヒント1を見る

pd.DataFrame({"city": [...], "population": [...]}) を作って print(df.describe())

実際に動かしてみよう

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

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

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