LEVEL 7 ・ Excel / Lesson 14

Excelの表を、Pythonに読み込む

pandasを使って、ExcelやCSVを1行で読み込みます。表の大きさや列名も確かめます。

目安 18分 ・ インストール不要

このレッスンが終わったら

「pandasのread_excelで、Excelの表が読める。表はデータフレームと呼ぶ」と言える。

STEP 1

できることを見る

ここに、10月の売上が入った Excel ファイル sales.xlsx があります。中身は、次のCSVと同じ内容です。(12行・5列の表です)

orders.csvサンプルファイル
日付,担当,部署,商品,金額
2025-10-01,田中,営業,ノートPC,120000
2025-10-02,佐藤,営業,モニター,35000
2025-10-03,鈴木,企画,ソフト,48000
2025-10-05,田中,営業,モニター,35000
2025-10-07,高橋,企画,ノートPC,120000
2025-10-08,佐藤,営業,ソフト,48000
2025-10-10,鈴木,企画,モニター,35000
2025-10-12,伊藤,総務,ソフト,48000
2025-10-14,田中,営業,ノートPC,120000
2025-10-15,高橋,企画,ソフト,48000
2025-10-17,伊藤,総務,モニター,35000
2025-10-20,佐藤,営業,ノートPC,120000

Excelで開くと、見慣れた表ですね。この表を、Pythonに読み込んでもらいます。表を扱うときは、pandas(パンダス)という道具を使います。

import pandas as pd

df = pd.read_excel("sales.xlsx")
print(df)
STEP 2

動かしてみる

Excelの表を読み込むpandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます

Excelの表が、そのまま表示されました。いちばん左の 0, 1, 2… は、Pythonが付けた行の番号です。(0番目から数えるのは、リストと同じです)

STEP 3

1行ずつ読む

1行ずつ日本語にしてみる
import pandas as pd表を扱う道具「pandas」を使う。呼ぶときは短く「pd」と呼ぶ
df = pd.read_excel("sales.xlsx")sales.xlsx を読み込んで、「df」という名前で覚える
print(df)表(df)を表示する

日本語にすると

pandas を使えるようにして、sales.xlsx を表として読み込み、その表を表示してください。

pd は、pandas の「あだ名」です。世界中のPythonコードで、この書き方が使われているので、そのまま覚えて構いません。df は、データフレーム(表)の略で、読み込んだ表の名前としてよく使われます。

ExcelとPythonの言葉を、対応させておきましょう。

Excelpandas
シート(表全体)データフレーム(df)
見出し行(1行目)列名
列(A列、B列…)列
行(1行、2行…)行
セル値
STEP 4

1か所だけ変える

① 先頭の数行だけ見る。 大きな表の全体を表示すると長いので、head() で先頭だけを見ます。(head(3) なら3行)

先頭の3行を見るpandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます
② 表の大きさと、列名を調べる。
行数・列数と、列名pandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます

shape は「(行数, 列数)」です。(12, 5) は、12行・5列の意味です。len(df) は行数、df.columns は列名の一覧です。

③ CSVも、同じように読める。 read_excel を read_csv に変えるだけです。

CSVを読み込むpandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます

Lesson 12 では、csv を使って1行ずつ読みました。pandas なら、1行で表全体が読めます。しかも、金額の列は、最初から数字として読み込まれます。(int() で変換する必要がありません)

④ シートを指定する。 Excelに複数のシートがあるときは、sheet_name で選びます。存在しない名前を指定すると、エラーになります。

シート名を指定するpandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます

Worksheet named '売上2' not found(その名前のシートはありません)と出ます。シート名の綴りを見直せば直ります。

STEP 5

自分で書く

お題① sales.xlsx を読み込んで、表の行数を表示してください。

お題①:行数を表示pandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます
ヒントを見る

df = pd.read_excel("sales.xlsx") で読み込んで、print(len(df)) と書きます。

答えの例を見る
import pandas as pd

df = pd.read_excel("sales.xlsx")
print(len(df))

お題② 列名の一覧を、リストの形で表示してください。

お題②:列名を表示pandas・サンプルファイル付き
Ctrl / ⌘ + Enter でも実行

この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。

結果
▶ 実行を押すと、ここに結果が出ます
ヒントを見る

df.columns を、list(...) で囲んで、print で表示します。

答えの例を見る
import pandas as pd

df = pd.read_excel("sales.xlsx")
print(list(df.columns))
STEP 6

仕事ならどう使う?