Pandasでエクセルデータを読み込む方法

pandas_logo pandas
スポンサーリンク

こんにちは。カルークです。

今回は、PythonのPandasでエクセルデータを読み込む方法について説明します。

ちなみに自分は最近までこのやり方を知らず、エクセル上でcsvファイルに変換&保存してからpythonでcsv読み込みをしていました。無駄なことしてましたね(^^;

スポンサーリンク

実行環境

今回の実行環境は、Windows 10 (64bit)です。Jupyter Notebookで実行します。

対象のエクセルファイル(サンプル)

今回は、「kakeibo_sample.xlsx」というファイルを用います。他の記事で何度か登場していますが、こんな感じの家計簿のサンプルです。

必要なパッケージをインストール

エクセルファイルは、pandasのread_excel()を利用します。まずはpandasをインストールしておきます。

pip install pandas

また、read_excel()の中ではxlrdを使っているので、以下のコマンドでパッケージをインストールしておきます。

pip install xlrd

以上で準備は整いました。それでは実際にエクセルファイルを読み込んでみます。

エクセルファイルの読み込み

基本的な使い方

read_excelの引数にエクセルファイルを指定するだけで、pandasのデータフレームの形式で読み込みができます。

df = pd.read_excel('./kakeibo_sample.xlsx')

以上でエクセルファイルをデータフレームの中に入れることができました。実際の中身を見てみます。

ちゃんと読み込めていますね。

シート名を指定して読み込む

「kakeibo_sample.xlsx」で「sample_sheet」というシートを作ってみました。

sample_sheetを指定して、データフレームに読み込んでみます。

df = pd.read_excel('./kakeibo_sample.xlsx', sheet_name='sample_sheet')

以上で”sample_sheet”を指定して読み込みができました。確認のため、中身を見てみます。

ちなみに、シートの番号で指定することも可能です。シート番号は0から始まります。今回の「sample_sheet」は2番目にあるので、”1″を指定します。

df = pd.read_excel('./kakeibo_sample.xlsx', sheet_name=1)

ちゃんと読み込めているか確認してみます。

すべてのシートを読み込む

sheet_nameにNoneを指定すると、すべてのシートをまとめて読み込むことが出来ます。

df = pd.read_excel('./kakeibo_sample.xlsx', sheet_name=None)

中身を見てみます。

シートがdict(辞書)形式で入っています。参照する際は、キーにシート名を指定して取得することが出来ます。例えば、sample_sheetを参照する場合はこんな感じです。

df['sample_sheet']

実行結果です。

まとめ

今回は、Pandasでエクセルファイルを読み込む方法についてまとめました。

タイトルとURLをコピーしました