サイトアイコン 独学エクセル塾

【Python×Excel】PandasでExcelデータを読み書きする方法(大量データに強い!)

 

「業務で使ってるExcel、数千行もあるから編集するのに時間かかってしょうがない…」
そんな悩みを抱えるあなたにオススメしたいのが、Pythonのライブラリ**Pandas(パンダス)**です。
このライブラリを使えば、Excelファイルの読み書きをコードで一瞬で終わらせることができます

今回は、以下のようなExcelファイルを使って説明します。

名前 年齢 部署
田中 28 営業
鈴木 34 開発
佐藤 25 総務

1. 必要なライブラリのインストール

最初に、pandasopenpyxlをインストールしておきましょう。

pip install pandas openpyxl

2. Excelファイルの読み込み

まずはExcelファイル(例: sample.xlsx)を読み込んで、中身を表示してみましょう。

import pandas as pd

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

# 中身を表示
print(df)

出力結果:

   名前  年齢   部署
0  田中  28   営業
1  鈴木  34   開発
2  佐藤  25   総務

3. データを編集する

読み込んだデータフレーム(表)に新しい列「勤務年数」を追加してみましょう。

# 勤務年数を追加
df["勤務年数"] = [3, 7, 2]

print(df)

出力結果:

   名前  年齢   部署  勤務年数
0  田中  28   営業      3
1  鈴木  34   開発      7
2  佐藤  25   総務      2

4. 編集したデータをExcelに保存する

編集後のデータを新しいExcelファイル(例: updated.xlsx)として保存します。

# Excelファイルとして保存(indexは行番号なので省略するのが一般的)
df.to_excel("updated.xlsx", index=False)

保存されたExcelファイルを開くと、新しい「勤務年数」列が反映されています。


5. 複数シートを扱う方法(応用)

もし複数のシートにデータを書きたい場合は、以下のように書きます。

with pd.ExcelWriter("multi_sheet.xlsx", engine="openpyxl") as writer:
    df.to_excel(writer, sheet_name="社員一覧", index=False)
    df[df["部署"] == "営業"].to_excel(writer, sheet_name="営業部", index=False)

まとめ

Pandasを使えば、Excelファイルの読み書き・編集・保存が数行のコードで完了します。
特に、大量データの処理や自動化に強く、毎日の手作業を一気に減らせるのが魅力です。

モバイルバージョンを終了