こんにちは!
皆さんは、Pandasでexcelファイルに保存されたデータを読み込みたいと思ったことはありませんか?
Pandasでexcelファイルの読み込みを行うには、「xlrdライブラリ」をインストールして、「read_excel()」を使うと簡単にできますよ。
今回の記事では、以下の内容について紹介します。
- xlrdライブラリについて
- Pandasでexcelファイルを読み込む方法
xlrdライブラリ
xlrdライブラリとは
xlrdライブラリは、excelのデータをPythonで読むために作成されたライブラリです。
今回はPandasのread_excelの内部で使用されているため、インストールの必要があります。
xlrdライブラリのインストール方法
pipでインストールする場合は以下になります。
pip install xlrd
anacondaを使ってインストールする場合は以下になります。
conda install -c anaconda xlrd
Pandasでexcelファイルを読み込む
Pandasでexcelファイルを読み込むには、「read_excel()」を使います。
内部で、xlrdライブラリを使用しているため、インストールしていない方はインストールしてください。
今回は以下のデータが保存された「sample.xlsx」を読み込みます。
excelファイルの基本的な読み込み方法
excelファイルのパスを指定します。
カレントディレクトリに置いている場合には、そのままexcelファイルの名前を指定しましょう。
import pandas as pd
df = pd.read_excel('sample.xlsx')
print(df)
実行結果
A B C
0 1 2 3
1 4 5 6
2 7 8 9
何も指定せずに読み込むと、sheet1のみが読み込まれます。
読み込むシートを指定する
「sheet_name」を使うと、読み込みたいシートを指定して、データを読み込むことができます。
import pandas as pd
df = pd.read_excel('sample.xlsx', sheet_name=1)
print(df)
実行結果
D E F
0 11 12 13
1 14 15 16
2 17 18 19
sheet2を読み込むことができました。
header、indexを指定する
「header」「index_col」を指定することで、どの行・列をDataFrameのcolumn, indexとして使うかを指定することができます。
デフォルトでは、header=0、index_col=Noneで指定されています。しかし、読み込まれたheaderの最初の要素がNoneの場合には、その最初の列がindexとして使われます。
そのことを確認してみましょう。
df = pd.read_excel('sample.xlsx')
print(df.columns)
print(df.index)
実行結果
Index(['A', 'B', 'C'], dtype='object')
RangeIndex(start=0, stop=3, step=1)
何も指定しなくても、最初の行がheader、最初の列がindexとして使用されていることがわかります。
では、次にheader, index両方Noneを指定して読み込んでみましょう。
import pandas as pd
df = pd.read_excel('sample.xlsx', header=None, index_col=None)
print(df)
実行結果
0 1 2
0 A B C
1 1 2 3
2 4 5 6
3 7 8 9
両方Noneと指定すると、自動で連番が指定されることがわかると思います。
まとめ
今回の記事では、以下の内容について紹介しました。
- xlrdライブラリについて
→excelファイルを読み込むためのライブラリ - Pandasでexcelファイルを読み込む方法
→「read_excel()」を使用
→シートやindexなどを指定することが可能
excelファイルを読み込む方法を覚えて、データ解析などに役立てましょう!