スプレッドシート入門

pandasで効率よくデータを取り込む

Amany Mahfouz

Instructor

スプレッドシート

  • Excel ファイルとも呼ばれます
  • 行と列に並ぶセルで構成された表形式のデータ
  • フラットファイルと異なり、書式や数式を含むことがあります
  • 1つのブックに複数のシートを含められます
pandasで効率よくデータを取り込む

スプレッドシートの読み込み

  • pandas にはスプレッドシートの読み込み関数 read_excel() があります

スプレッドシートで表示した FreeCodeCamp の New Developer Survey データのスクリーンショット

pandasで効率よくデータを取り込む

スプレッドシートの読み込み

import pandas as pd

# Excel ファイルを読み込む
survey_data = pd.read_excel("fcc_survey.xlsx")

# 先頭5行を表示 print(survey_data.head())
    Age  AttendedBootcamp       ...                    SchoolMajor  StudentDebtOwe
0  28.0               0.0       ...                            NaN           20000
1  22.0               0.0       ...                            NaN             NaN
2  19.0               0.0       ...                            NaN             NaN
3  26.0               0.0       ...        Cinematography And Film            7000
4  20.0               0.0       ...                            NaN             NaN

[5 rows x 98 columns]
pandasで効率よくデータを取り込む

特定の列・行の読み込み

メタデータ見出し行を含む調査データのスプレッドシート

複数の小さな表を含む請求書のスプレッドシート

pandasで効率よくデータを取り込む

特定の列・行の読み込み

  • read_excel() には read_csv() と共通の引数が多くあります
    • nrows: 読み込む行数の上限
    • skiprows: 先頭から/特定の行をスキップ
    • usecols: 列名、位置番号、または文字(例: "A:P")で列を指定
pandasで効率よくデータを取り込む

特定の列・行の読み込み

pandasで効率よくデータを取り込む

特定の列・行の読み込み

# メタデータ見出しをスキップして、列 W-AB と AR を読み込み
survey_data = pd.read_excel("fcc_survey_with_headers.xlsx",
                            skiprows=2,
                            usecols="W:AB, AR")

# データを表示 print(survey_data.head())
   CommuteTime            CountryCitizen  ...    EmploymentFieldOther    EmploymentStatus   Income
0         35.0  United States of America  ...                     NaN  Employed for wages  32000.0
1         90.0  United States of America  ...                     NaN  Employed for wages  15000.0
2         45.0  United States of America  ...                     NaN  Employed for wages  48000.0
3         45.0  United States of America  ...                     NaN  Employed for wages  43000.0
4         10.0  United States of America  ...                     NaN  Employed for wages   6000.0

[5 rows x 7 columns]
pandasで効率よくデータを取り込む

練習してみましょう!

pandasで効率よくデータを取り込む

Preparing Video For Download...