目次
行・列名の変更
今回はPythonのDataFrameでデータの行・列名の変更するrename()メソッドをご紹介します
特にカラム名の変更はよく利用するためしっかり覚えましょう
事前準備
「Pandas」というデータ解析を実施できるライブラリをインポートします
import pandas as pd
※サンプルデータ:学校のテストの点数
student.head()
renameの使い方
列名も行名も両方ともrename()メソッドを利用します
パラメータでcolumnsとindexを指定しましょう
辞書型で新旧それぞれ指定し、変更することができます
パラメータ
おすすめ度を判定:★★★=必須|★★☆=推奨|★☆☆=任意
★★★:columns(列名の変更)
student.rename(columns={'名字':'Name'})
前述した通り、{ }辞書型で変更したいカラム名を記載し、:コロンに続けて変更後のカラム名を指定します
上記の例では「名字」を「Name」に変更しています
もちろん英語も日本語もどちらも対応可能です
複数列を変更したい場合は、辞書型で続けて記載します
student.rename(columns={'名字':'Name',
'生徒番号':'No',
'クラス':'Class'})
★★☆:index(行名の変更)
student.rename(index={0:'1人目'})
こちらもcolumns同様に、辞書型で変更前の行名と変更後の行名を記述します
indexを変更する頻度は高くないですが、columnsと合わせて覚えてください
もちろん複数指定もできます
student.rename(index={0:'1人目',
1:'2人目',
2:'3人目'})
Pythonで文字列を扱う場合はクォーテーションで括りましょう
‘ ‘シングルクォーテーションでも” “ダブルクォーテーションでもどちらでも大丈夫です
逆に数値型はクォーテーションは必要ありません
★☆☆:inplace(上書き)
student.rename(columns={'名字':'Name'}, inplace=True)
inplaceを「True」で設定することで、DataFrame自体の中身を上書きすることができます
同じ変数に置き換えるのと等しい機能になりますが、より簡潔に記述することが可能です
※下記は同じ結果になります
student.rename(columns={'名字':'Name'}, inplace=True)
student = student.rename(columns={'名字':'Name'}) #上と同じ結果
※デフォルトではinplaceは「False」のため上書きは設定されません
まとめ
今回はDataFrameの列名・行名を変更するrename()メソッドをについてご紹介してきました
columnsとindexというパラメータは対になる機能なので、ぜひ使ってみてください