to_excelでxlsx,xlsファイルを書き込む / Python Pandas

 

{{DZ_TITLE}}
Excelファイル(xlsx,xls)をPandasで書込む方法。

Excelファイル保存方法

以下の方法で、簡単に保存することが可能です。

df.to_excel('test.xlsx', index=False)
df.to_excel('test.xls', index=False)

よくあるエラーメッセージについて

ModuleNotFoundError: No module named ‘openpyxl’ エラーが出る場合は

モジュールopenpyxlをインストールする必要があります。
下記のコマンドでインストールしてください。
Linuxの場合はpip3となります。
jupyterの中では!pipでインストール可能です。

pip install openpyxl

ModuleNotFoundError: No module named ‘xlwt’ エラーが出る場合は

モジュールxlwtをインストールする必要があります。
下記のコマンドでインストールしてください。
Linuxの場合はpip3となります。
jupyterの中では!pipでインストール可能です。

pip install xlwt

PermissionError: [Errno 13] Permission denied: ‘ファイル名’ エラーが出る場合は

ExcelやLibre Office等で既に読み込んでいる場合、そのファイルは上書きできない状況です。
一旦、ExcelやLibre Office等でそのファイルを閉じてください。
その他書き込み権限のない場所に書こうとしている場合も同じメッセージが出ます。
その場合は、別の保存先を選択してください。

サンプル

プログラム

import pandas as pd

# テストデータ DataFrameを作成する
df = pd.DataFrame( {'No':[1,2,3], 'Type':['いぬ','ねこ','すずめ'], 'Voice':['わん','にゃん','ちゅん'] })

# CSVを保存する
df.to_excel('test.xlsx', index=False)
df.to_excel('test.xls', index=False)

作成されたデータ to_excel-001.png

パラメータ

インデックスを保存

他のサンプルですと、index=False を指定しているものが多いですが、ここではあえて外します。

import pandas as pd

# テストデータ DataFrameを作成する
df = pd.DataFrame( {'No':[1,2,3], 'Type':['いぬ','ねこ','すずめ'], 'Voice':['わん','にゃん','ちゅん'] })

# CSVを保存する
df.to_excel('test.xlsx')

Index欄が一緒に保存されます。
日時などををIndexに指定している場合や、Indexに重要な情報を保存している場合は、一緒に保存する事をおすすめします。

index=False 有り
to_excel-001.png
index=False 無し
左に欄が1つ追加されます。
例えばIndexがDatetimeだったり重要な値の場合はindex=Falseを登録する必要があります。
to_excel-002.png

ヘッダーを消す、Header

ヘッダーを消す場合 header=False

import pandas as pd

# テストデータ DataFrameを作成する
df = pd.DataFrame( {'No':[1,2,3], 'Type':['いぬ','ねこ','すずめ'], 'Voice':['わん','にゃん','ちゅん'] })

# CSVを保存する
df.to_excel('test.xlsx',  index=False, header=False)

ヘッダーが消えます to_excel-001.png

関連

Excelファイルの読込 read_excel
CSVファイルの保存 to_csv
Python - Pandas徹底解説

もっとPythonを学びたいなら

Python徹底解説
Python - OpenCV徹底解説

おすすめ記事

Django テンプレート 使用 #2 Staticファイルの使用
Django テンプレート 使用 #2 Staticファイルの使用
to_csvでCSV,TSVファイルを書き込む / Python Pandas
to_csvでCSV,TSVファイルを書き込む / Python Pandas
Django 目次 - Python
Django 目次 - Python
Raspberry pi Liteの非X Window環境でJackdを動かす
Raspberry pi Liteの非X Window環境でJackdを動かす
Django テンプレート 使用 #3 List Dictの表示
Django テンプレート 使用 #3 List Dictの表示
プログラムは独学が良いか、スクールが良いか?【無償カウンセリング、無料体験あり】
プログラムは独学が良いか、スクールが良いか?【無償カウンセリング、無料体験あり】
Supponsered

外部サイト
↓プログラムを学んでみたい場合、学習コースなどもおすすめです!

Comments

comments powered by Disqus