Pandas で特定の DataFrame 列の名前を変更する
-
rename()
メソッドを使用して Pandas の DataFrame 列の名前を変更する -
rename()
メソッドを使用して、Pandas で複数の DataFrame 列の名前を変更する - Lambda 関数を使用して Pandas の DataFrame 列の名前を変更する
-
set_axis()
関数を使用して Pandas の DataFrame 列の名前を変更する -
columns.str.replace()
関数を使用して、Pandas の列名の特定のテキストを置き換えます - Pandas の列名の更新されたリストを渡して列の名前を変更する
Python でデータが行と列に格納される長方形のグリッドは、Pandas データフレームとして知られています。 各行は 1つのインスタンスの測定値を表し、各列は 1つの属性または変数のデータ ベクトルです。
データフレーム行には、特定の行全体で同種または異種のデータを含めることができますが、各データフレーム列には、特定の列全体で同種のデータが含まれます。 2 次元配列とは異なり、Pandas のデータフレームにはラベルが付いた軸があります。
rename()
メソッドを使用して Pandas の DataFrame 列の名前を変更する
rename()
メソッドを使用して、Pandas データフレームの列とインデックスの名前を変更できます。 わかりやすくするために、キーワード引数を使用することをお勧めします。
ディクショナリの値に応じて、このメソッドを使用して単一の列または多数の列の名前を変更できます。
コード例:
import pandas as pd
d1 = {"Names": ["Harry", "Petter", "Daniel", "Ron"], "ID": [1, 2, 3, 4]}
df = pd.DataFrame(d1)
display(df)
# rename columns
df1 = df.rename(columns={"Names": "Student Names"})
display("After renaming the columns:", df1)
出力:
rename()
メソッドを使用して、Pandas で複数の DataFrame 列の名前を変更する
以下の例では、一度に複数の列の名前を変更できることが示されています。 id
列の名前が Roll No
に変更され、Student Names
が Names
に置き換わります。
コード例:
import pandas as pd
df1 = pd.DataFrame(
{"id": ["ID1", "ID2", "ID3", "ID4"], "Names": ["Harry", "Petter", "Daniel", "Ron"]}
)
display(df1)
df = pd.DataFrame(df1)
df1.rename({"id": "Roll No", "Names": "Student Names"}, axis="columns", inplace=True)
display(df1)
出力:
Lambda 関数を使用して Pandas の DataFrame 列の名前を変更する
ラムダ関数は、1つの式のみをサポートするが、無制限の数の引数を受け入れる単純な無名関数です。 すべての列を同時に変更する必要がある場合は、これを利用できます。
複数の列があり、リストや辞書を使用して名前を変更するのが難しい場合に役立ちます。 以下の例では、ラムダ関数を使用してすべての列名の末尾にコロン (:
) を追加しています。
コード例:
import pandas as pd
df1 = pd.DataFrame(
{"id": ["ID1", "ID2", "ID3", "ID4"], "Names": ["Harry", "Petter", "Daniel", "Ron"]}
)
display(df1)
frames = [df1, df2]
df = df1.rename(columns=lambda x: "Student " + x)
display(df)
出力:
set_axis()
関数を使用して Pandas の DataFrame 列の名前を変更する
以下の例では、set_axis()
メソッドを使用して列の名前を変更します。 引数として、新しい列名と名前を変更する必要がある軸を指定します。
import pandas as pd
df1 = pd.DataFrame(
{"id": ["ID1", "ID2", "ID3", "ID4"], "Names": ["Harry", "Petter", "Daniel", "Ron"]}
)
display(df1)
df1.set_axis(["A", "B"], axis="columns", inplace=True)
display(df1)
出力:
columns.str.replace()
関数を使用して、Pandas の列名の特定のテキストを置き換えます
この例では、replace()
関数を使用して列の名前を変更します。 列の引数として、古い名前と新しい名前を指定します。
import pandas as pd
df1 = pd.DataFrame(
{
"id": ["ID1", "ID2", "ID3", "ID4"],
"Names": ["Harry", "Petter", "Daniel", "Ron"],
"Department": ["English", "Science", "General Knowledge", "Arts"],
}
)
display(df1)
df1.set_axis(["A", "B", "C"], axis="columns", inplace=True)
df1.columns = df1.columns.str.replace("Id", "Rollno")
df1.columns = df1.columns.str.replace("Names", "Students")
df1.columns = df1.columns.str.replace("Department", "Program")
df1.head()
display(df1)
出力:
Pandas の列名の更新されたリストを渡して列の名前を変更する
Dataframe オブジェクトの columns プロパティに新しい名前を持つリストを設定して、列の名前を直接変更することによって、列を変更することもできます。 このアプローチの欠点は、列の一部のみの名前を変更したい場合でも、すべての列に名前を付けなければならないことです。
コード例:
import pandas as pd
df1 = pd.DataFrame(
{
"id": ["ID1", "ID2", "ID3", "ID4"],
"Names": ["Harry", "Petter", "Daniel", "Ron"],
"Department": ["English", "Science", "General Knowledge", "Arts"],
}
)
display(df1)
df1.columns = ["Rollno", "Students", "Program"]
display(df1)
出力:
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn