初心者のためのDjango入門
■第17話:PandasによるCSV、Excelデータの読み込みと書き出し
(最終更新日:2023.06.16)
(絵が小さい場合はスマホを横に)
「Pandasを用いてデータを自在に操ろう!」
PandasはCSVやEXCELデータを読みこんで、DataFrameとして取り込むことができる。
反対にPandasで作成したDataFrameをCSVやEXCELデータに書き出すこともできる。
今回は、普段のドキュメント作成でも活用できるこれらの機能について説明する。
1.CSVとEXCELファイルの読み込み
まず、Pandasを用いてCSVファイルとEXCELファイルを読みこむ方法を説明する。 読みこみ方法は非常に簡単で、Pandasの関数を用いて、csvとexcel、それぞれを読みこむだけである。 これにより、DataFrameに各ファイルに書き込まれている内容が反映される。
CSV、EXCELファイルの読みこみ
1点気を付けたいのが、excelファイルの読み書きには、openpyxlが必要になる。 「pip install openpyxl」とコマンドを打ち、最初にopenpyxlをインストールしておこう。 実際、上記の命令で読みこんだDataFrameをprint(df_excel)を表示すると、以下のようになる。 (print(df_csv)も同じデータが表示される。) 前章の第3項で説明した方法と同様のデータフレームが作成されていることが分かる。
読み込み元のExcelの内容(上)、表示されたDataFrame(下)
2.データの書き出し
また、Pandasで作成したDataFrameをCSVやEXCELファイルに書き出すことができる。 以下に、DataFrameからCSVファイルとExcelファイルを作成する例を示す。 最初にDataFrameを作成し、それから、df.to_csvとdf.to_excelでCSVとEXCELファイルに出力している。
CSVとEXCELファイルへの出力
上記のコードを実行することで、出来たCSVとEXCELファイルが以下の通りとなる。 出力まで若干(2ファイルで10秒前後)時間が掛かるが、確かにCSVとEXCELファイルに出力することができた。
CSV(左)とEXCEL(右)ファイルへの出力結果
3.まとめ
今回、CSV、ExcelデータをPandasで読み込むことができた。
PandasのDataFrameをCSV、Excelに書き出すこともできた。
非常に簡単なコードで、読み書きが出来ることが分かったと思う。
ExcelのマクロやVBでデータ処理を自動化したことがある人もいると思う。
PythonやPandasでは、同様の処理を更にシンプルに簡潔なコードで行うことができる。
他の強力なライブラリの力を借りて複雑なデータ処理を行うこともできる。
次章以降で説明するデータ操作やデータ分析と組み合わせて、有効活用してみよう。
▼参考図書、サイト
Pandas Seriesを徹底解説! AI-interのPython3入門
Excelファイルを扱う上でのopenpyxlとpandas の違い GAMMASOFT