困っている人
- Pandasで大文字と小文字を変換する方法を知りたい
- upperメソッド、lowerメソッドの使い方を知りたい
- 大文字、小文字変換の具体的な操作方法を教えてほしい
- Pandasで大文字と小文字を変換する方法が分かる
- upperメソッド、lowerメソッドの使い方が分かる
- 大文字と小文字変換の具体的な操作が分かる
この記事を書いている人
プログラミング(Python・Django・SQL・HTML・css・Bootstrapなど)を独学で習得。「Excel作業の自動化」「人工知能による予測」「Webアプリ開発」「Webスクレイピング」で業務改善×システム化を得意にしています。
Pythonによる大文字と小文字の変換について
Pythonによる大文字と小文字の変換は、データ分析の前処理によく使われるテクニックです。
実際のビジネスの現場では、Excel等に手入力したデータを使うこともあり、書式がバラバラだと集計に失敗することになります。データ分析は、まずデータの書式が統一されているかを事前に確認する必要があります。
商品コード | 文字列 |
a001 | ringo |
A001 | ringo |
A001 | Ringo |
今回は、Pandasのデータフレームにおける、大文字と小文字を変換する方法を解説していきます。データ分析の前処理に欠かせないテクニックなので、ぜひ参考にしてください。
Pythonの大文字・小文字の変換メソッドについて
今回紹介する大文字と小文字の変換メソッド一覧です。
No. | 基本形 | 説明 |
1 | str.upper() | ”小文字”を”大文字”へ変換 |
2 | str.lower() | ”大文字”を”小文字”へ変換 |
3 | str.capitalize() | 先頭の1文字のみ”大文字”に変換 |
4 | str.title() | 単語の先頭の1文字のみ”大文字”に変換 |
Pythonの大文字・小文字の変換に使用するサンプルデータ
この記事では以下の2種類のサンプルデータを使います。よろしければ、ダウンロードしてご利用ください。
[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#7ca1b7″ bgcolor=”#ffffff” borderwidth=”2″ borderradius=”2″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]
[/st-mybox]
また、GoogleColabへのサンプルデータ(Excelファイル)の読み込み方法については、以下の記事を参考にしてください。
[st-card id=180 label=”” name=”” bgcolor=”” color=”” fontawesome=”” readmore=”on”]
Pythonのupper・lowerメソッドで大文字と小文字を変換
具体例として商品コードを使って、大文字と小文字の変換方法を説明します。まずはExcelファイルを読み込んでください。
Excelファイル(item_1)の読み込み
Pandasを使ってExcelファイルを読み込みます。5種類の”商品コード”が出力されています。先頭の文字が”大文字”と”小文字”でバラバラになっているのが分かります。
import pandas as pd
df_1=pd.read_excel("item_1.xlsx")
df_1
1.pandasをインポート
2.変数(df_1)にExcelファイルから読み込んだデータフレームを代入
3.変数(df_1)を出力
Pythonのupperメソッドで文字列を変換(小文字→大文字)
小文字から大文字に変換する方法は以下のとおりです。「商品コード_1」に変換後の文字列が表示されています。小文字(a)を大文字(A)に変換できました。
df_1['商品コード_1']=df_1['商品コード'].str.upper()
df_1
1.変数(df_1[‘商品コード_1’])に、小文字から大文字に変換した商品コードを代入
2.変数(df_1)を出力
Pythonのlowerメソッドで文字列を変換(大文字→小文字)
今度は逆に、大文字から小文字に変換します。「商品コード_2」に変換後の文字列が表示されています。大文字(A)を全て小文字(a)に変換できました。
df_1['商品コード_2'] = df_1['商品コード'].str.lower()
df_1
1.変数(df_1[‘商品コード_2’])に、大文字から小文字に変換した商品コードを代入
2.変数(df_1)を出力
Pythonのcapitalizeメソッド・titleメソッドで先頭の一文字だけを変換
次は、文字列の先頭の一文字だけを、小文字から大文字に変換する方法を説明します。まずはExcelファイルを読み込んでください。
Excelファイル(item_2)の読み込み
Pandasを使ってExcelファイルを読み込みます。下記のとおり、”商品名”と”ローマ字”が出力されています。
df_1 = pd.read_excel("item_2.xlsx")
df_1
1.変数(df_1)にExcelファイルから読み込んだデータフレームを代入
2.変数(df_1)を出力
Pythonのcapitalizeメソッドで、先頭一文字のみ変換(小文字→大文字)
文字列の先頭の一文字だけを、小文字から大文字に変換する方法は以下のとおりです。「ローマ字_1」に変換後の文字列が表示されています。
df_1['ローマ字_1'] = df_1['ローマ字'].str.capitalize()
df_1
1.変数(df_1[‘ローマ字_1’])に、先頭の一文字のみ小文字から大文字に変換した商品コードを代入
2.変数(df_1)を出力
Pythonのtitleメソッドで、単語の先頭の一文字のみ変換(小文字→大文字)
今度は、全ての単語の先頭の一文字を、小文字から大文字に変換する方法を説明します。「ローマ字_2」に変換後の文字列が表示されています。
df_1['ローマ字_2'] = df_1['ローマ字'].str.title()
df_1
1.変数(df_1[‘ローマ字_2’])に、単語の先頭の一文字のみ小文字から大文字に変換した商品コードを代入
2.変数(df_1)を出力
Pythonによる大文字と小文字の変換のまとめ
Pythonによる大文字・小文字の変換方法について解説しました。
データ分析を行う前には、使用するデータの書式が統一されているかを事前に確認する必要があります。バラバラのデータで分析してしまうと、間違った結果を出すことになるからです。
今回ご紹介した「str.upper()」と「str.lower()」は、大文字・小文字を一括で変換できる便利なメソッドなので、参考にしてください。
最後まで読んでいただき、ありがとうございます。