ミドリ黄のプログラミングメモノート

主にUnity(C#)を中心としたプログラムの備忘録

Python pandas read_excelで読み込んだデータのindexとcolumnsを変更する




前提

以下の例では下の画像のようなエクセルファイルを読み込みました
(ファイル名:sample.xlsx、シート名:Sheet1)。




indexの変更

以下の処理を用いてExcelファイルを読み込み、表示します。

import pandas as pd
df = pd.read_excel('sample.xlsx', 'Sheet1')

実行結果


ここで、実行結果の左端に表示されている0, 1, 2という数字はindexですが、これを任意のものに変更するプログラムを紹介します。
今回はindexの変更に辞書型を用います。0, 1, 2という数字をkeyとしてそれぞれに対応する文字列をvalueとしたものを作成すればよいです。
実際に変更した例がこちらになります。

import pandas as pd
df = pd.read_excel('sample.xlsx', 'Sheet1')

#keyとなるリスト(a)とvalueとなるリスト(s)から辞書型を作成
a = list(range(len(df)))
s = ["Zero", "One", "Two" , "Three", "Four"]
dic = dict(zip(a, s))

#dicに従い名前を変更
df.rename(index =dic, inplace=True)
df

実行結果




columnsの変更

先ほどのシートにおいて「名前」、「英語」、「数学」、「国語」はcolumnsと呼ばれます。
indexと同様の方法でこれらを変更することができます。

import pandas as pd
df = pd.read_excel('sample.xlsx', 'Sheet1')

#keyとなるリスト(a)とvalueとなるリスト(s)から辞書型を作成
a = ["名前", "英語", "数学", "国語"]
s = ["Name", "Eng", "Math" , "Jan"]
dic = dict(zip(a, s))

#dicに従い名前を変更
df.rename(columns =dic, inplace=True)
df

実行結果