珍しくIT関連の記事です。
データ分析の仕事等をしているとExcelのファイルを読み込みたいことがあると思います。
そんなときのPythonでの読み込み方法です。
準備
とりあえずxlrdをpipでインストールします。
pip install xlrd
読み込み方
pandasで読み込むのが簡単です。
まずはシンプルな例として「ひとつのxlsxファイルの中の,ひとつのシートを読み込む」場合です。
import pandas as pd # 読み込みたいファイル名とシート名を指定 book = 'book.xlsx' sheet = 'sheet_name' # 読み込み処理 loaded_file = pd.ExcelFile(book) # ファイルを読み込む sheet_df = loaded_file.parse(sheet_name) # シートをpandasのDataFrameに変換
以上です。pandasを使えば簡単ですね。
もうsheet_dfがDataFrameになっているので,あとは好きに処理してしまえばいいです。
複数のファイルの全シートを読み込みたい場合はこういう感じになります。
import pandas as pd # 読み込みたいファイルを指定 books = ['book1.xlsx', 'book2.xlsx'] df_list = [] # 全ファイルの全シートをDataFrameのリストに変換する for book in books: file = pd.ExcelFile(book) # bookを読む for sheet in file.sheet_names: df_list.append(file.parse(sheet)) # シートを順々にデータフレーム化
ちなみに,pandas.ExcelFile.parseで比較的よく使う引数は次の2つくらいですかね。
・skiprows: 最初の何行をスキップするか
・header: 最初の行をヘッダーとして読み込まない場合は,header=None