本文へスキップ
BecomeCoder

Pythonデータ分析コース · 第1章 データ分析をはじめる · レッスン3

表を扱う ― 最初のDataFrame

ブラウザで完結

導入

現実のデータは、Excel のようなの形をしています。pandas の **DataFrame(データフレーム)**は、まさにこの「表」を扱う道具です。

説明

pd.DataFrame() に辞書を渡すと、辞書のキーが列の名前、値のリストが列の中身になった表ができます。

import pandas as pd

df = pd.DataFrame({
    "名前": ["田中", "鈴木", "佐藤"],
    "年齢": [28, 34, 22],
    "点数": [80, 95, 70],
})
print(df)

実行すると、行と列のそろった表が表示されます。いちばん左の 0 1 2 は**行番号(インデックス)**で、pandas が自動で振ります。

列を1つ取り出すには、df["列名"] と書きます。

import pandas as pd

df = pd.DataFrame({
    "名前": ["田中", "鈴木", "佐藤"],
    "点数": [80, 95, 70],
})
print(df["点数"])
print("平均点:", df["点数"].mean())

DataFrame の列は、中身が numpy 配列とよく似ていて、.mean().sum() がそのまま使えます。

やってみよう

df["点数"].max() で最高点を出してみましょう。df["年齢"].mean() で平均年齢も出せます(上の表に年齢列を足してみてください)。

演習

商品(りんご・みかん・ぶどう)と 価格(120・80・300)の2列を持つ DataFrame を作り、価格 列の合計を表示してください。

ヒント1を見る

pd.DataFrame({"商品": [...], "価格": [...]}) を作り、df["価格"].sum()

実際に動かしてみよう

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

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

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