LEVEL 7 ・ Excel / Lesson 14
Excelの表を、Pythonに読み込む
pandasを使って、ExcelやCSVを1行で読み込みます。表の大きさや列名も確かめます。
このレッスンが終わったら
「pandasのread_excelで、Excelの表が読める。表はデータフレームと呼ぶ」と言える。
できることを見る
ここに、10月の売上が入った Excel ファイル sales.xlsx があります。中身は、次のCSVと同じ内容です。(12行・5列の表です)
日付,担当,部署,商品,金額 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)動かしてみる
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
Excelの表が、そのまま表示されました。いちばん左の 0, 1, 2… は、Pythonが付けた行の番号です。(0番目から数えるのは、リストと同じです)
1行ずつ読む
import pandas as pd表を扱う道具「pandas」を使う。呼ぶときは短く「pd」と呼ぶdf = pd.read_excel("sales.xlsx")sales.xlsx を読み込んで、「df」という名前で覚えるprint(df)表(df)を表示する日本語にすると
pd は、pandas の「あだ名」です。世界中のPythonコードで、この書き方が使われているので、そのまま覚えて構いません。df は、データフレーム(表)の略で、読み込んだ表の名前としてよく使われます。
ExcelとPythonの言葉を、対応させておきましょう。
| Excel | pandas |
|---|---|
| シート(表全体) | データフレーム(df) |
| 見出し行(1行目) | 列名 |
| 列(A列、B列…) | 列 |
| 行(1行、2行…) | 行 |
| セル | 値 |
1か所だけ変える
① 先頭の数行だけ見る。 大きな表の全体を表示すると長いので、head() で先頭だけを見ます。(head(3) なら3行)
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
shape は「(行数, 列数)」です。(12, 5) は、12行・5列の意味です。len(df) は行数、df.columns は列名の一覧です。
③ CSVも、同じように読める。 read_excel を read_csv に変えるだけです。
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
Lesson 12 では、csv を使って1行ずつ読みました。pandas なら、1行で表全体が読めます。しかも、金額の列は、最初から数字として読み込まれます。(int() で変換する必要がありません)
④ シートを指定する。 Excelに複数のシートがあるときは、sheet_name で選びます。存在しない名前を指定すると、エラーになります。
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
Worksheet named '売上2' not found(その名前のシートはありません)と出ます。シート名の綴りを見直せば直ります。
自分で書く
お題① sales.xlsx を読み込んで、表の行数を表示してください。
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
ヒントを見る
df = pd.read_excel("sales.xlsx") で読み込んで、print(len(df)) と書きます。
答えの例を見る
import pandas as pd
df = pd.read_excel("sales.xlsx")
print(len(df))お題② 列名の一覧を、リストの形で表示してください。
この欄では、サンプルファイルが使えます。実行のたびに、ファイルは最初の状態に戻ります。
▶ 実行を押すと、ここに結果が出ます
ヒントを見る
df.columns を、list(...) で囲んで、print で表示します。
答えの例を見る
import pandas as pd
df = pd.read_excel("sales.xlsx")
print(list(df.columns))