Pandas DataFrame에서 열 이름을 바꾸는 방법

Puneet Dobhal 2023년1월30일
  1. DataFrame.columns 메소드를 사용하여 Pandas DataFrame에서 열 이름 바꾸기
  2. DataFrame.rename()메소드를 사용하여 Pandas DataFrame에서 열 이름 바꾸기
  3. DataFrame.set_axis()메소드를 사용하여 Pandas DataFrame에서 열 이름을 바꿉니다
Pandas DataFrame에서 열 이름을 바꾸는 방법

종종 데이터 분석에서 열 이름을 조작해야합니다. 이 기사에서는 이미 정의 된 Panadas DataFrame에 대한 열 이름을 조작 / 이름 바꾸기하는 다양한 방법을 살펴 봅니다.

DataFrame.columns 메소드를 사용하여 Pandas DataFrame에서 열 이름 바꾸기

이 방법은 매우 간단하며 열 이름을 직접 바꿀 수 있습니다. DataFrame.columns 속성을 사용하여 다음과 같이 새 열 이름 목록을 지정할 수 있습니다.

import pandas as pd

example_df = pd.DataFrame(
    [["John", 20, 45], ["Peter", 21, 62], ["Scot", 25, 68]],
    index=[0, 1, 2],
    columns=["Name", "Age", "Marks"],
)

print "\nOriginal DataFrame"
print (pd.DataFrame(example_df))
example_df.columns = ["Name", "Age", "Roll_no"]

print "\nModified DataFrame"
print (pd.DataFrame(example_df))

출력:

Original DataFrame
    Name  Age  Marks
0   John   20     45
1  Peter   21     62
2   Scot   25     68

Modified DataFrame
    Name  Age  Roll_no
0   John   20       45
1  Peter   21       62
2   Scot   25       68

이 방법의 한 가지 단점은 열 중 하나만 이름을 바꾸어야하는 경우에도 전체 열을 나열해야한다는 것입니다. 열 수가 많으면 전체 열 목록을 지정하는 것이 실용적이지 않게됩니다.

DataFrame.rename()메소드를 사용하여 Pandas DataFrame에서 열 이름 바꾸기

이전 방법에 대한 대안은DataFrame.rename()방법을 사용하는 것입니다. 이 방법은 모든 열의 이름을 바꿀 필요가 없을 때 매우 유용합니다.

이전 열 이름을 키로 지정하고 새 이름을 값으로 지정해야합니다.

import pandas as pd

example_df = pd.DataFrame(
    [["John", 20, 45, 78], ["Peter", 21, 62, 68], ["Scot", 25, 68, 95]],
    index=[0, 1, 2],
    columns=["Name", "Age", "Marks", "Roll_no"],
)

print "\nOriginal DataFrame"
print (pd.DataFrame(example_df))
example_df.rename(columns={"Marks": "Roll_no", "Roll_no": "Marks"}, inplace=True)

print "\nModified DataFrame"
print (pd.DataFrame(example_df))

출력:

Original DataFrame
    Name  Age  Marks  Roll_no
0   John   20     45       78
1  Peter   21     62       68
2   Scot   25     68       95

Modified DataFrame
    Name  Age  Roll_no  Marks
0   John   20       45     78
1  Peter   21       62     68
2   Scot   25       68     95

이 방법의 가장 큰 장점은 원하는 수의 열을 지정할 수 있다는 것입니다. 특정 열의 이름을 바꾸어야 할 때 매우 효과적이며, 이전 방법과 달리 ‘데이터 프레임’에 대한 전체 열 목록을 나열 할 필요가 없습니다.

DataFrame.rename()함수 호출에서inplace 매개 변수를 True로 지정했음을 알 수 있습니다. inplace 매개 변수는 기본적으로False이며 새 Pandas DataFrame을 리턴할지 여부를 지정합니다.

True로 지정하면 함수 호출이 새로운 Pandas DataFrame을 반환하지 않지만 기존의 DataFrame을 대신 변경합니다.

DataFrame.set_axis()메소드를 사용하여 Pandas DataFrame에서 열 이름을 바꿉니다

Pandas DataFrame의 열 이름을 바꾸는 또 다른 편리한 방법입니다. 이 방법을 사용하는 동안 전체 열 목록을 지정해야합니다.

import pandas as pd

example_df = pd.DataFrame(
    [["John", 20, 45, 78], ["Peter", 21, 62, 68], ["Scot", 25, 68, 95]],
    index=[0, 1, 2],
    columns=["Name", "Age", "Marks", "Roll_no"],
)

print "\nOriginal DataFrame"
print (pd.DataFrame(example_df))

example_df.set_axis(["Name", "Age", "Roll_no", "Marks"], axis="columns", inplace=True)

print "\nModified DataFrame"
print (pd.DataFrame(example_df))

출력:

Original DataFrame
    Name  Age  Marks  Roll_no
0   John   20     45       78
1  Peter   21     62       68
2   Scot   25     68       95

Modified DataFrame
    Name  Age  Roll_no  Marks
0   John   20       45     78
1  Peter   21       62     68
2   Scot   25       68     95

관련 문장 - Pandas DataFrame