logo

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

Pandas DataFrame이 주어지면 예제를 통해 Pandas에서 열 이름을 바꾸는 방법을 살펴보겠습니다. 여기서는 Pandas DataFrame에서 열 이름을 바꾸는 5가지 방법에 대해 설명합니다.

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

방법 1: rename() 함수 사용

Pandas Dataframe에서 열 이름을 바꾸는 한 가지 방법은 rename() 함수를 사용하는 것입니다. 이 방법은 이름을 바꿀 열에 대해서만 정보를 지정해야 하기 때문에 선택한 일부 열의 이름을 바꿔야 할 때 매우 유용합니다.



예시 1: 이름 바꾸기 단일 열 .

파이썬
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd) rankings_pd.rename(columns = {'test':'TEST'}, inplace = True) # After renaming the columns print('
After modifying first column:
', rankings_pd.columns)>

산출:



예시 2: 이름 바꾸기 여러 열 .

파이썬
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd.rename(columns = {'test':'TEST', 'odi':'ODI', 't20':'T20'}, inplace = True) # After renaming the columns print(rankings_pd.columns)>

산출:

방법 2: 새 열 이름 목록을 할당하여

열 이름을 바꾸려는 Dataframe 객체의 columns 속성에 새 이름이 포함된 목록을 직접 할당하여 열 이름을 바꿀 수도 있습니다. 이 방법의 단점은 일부 열의 이름만 바꾸려는 경우에도 모든 열에 새 이름을 제공해야 한다는 것입니다.



파이썬
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd.columns = ['TEST', 'ODI', 'T-20'] # After renaming the columns print(rankings_pd.columns)>

산출:

방법 3: DataFrame set_axis() 함수를 사용하여 열 이름 바꾸기

이 예에서는 set_axis 함수를 사용하여 열 이름을 바꾸고, 새 열 이름과 열에서 새 이름으로 바꿔야 할 축을 매개 변수로 전달합니다.

파이썬
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd.set_axis(['A', 'B', 'C'], axis='columns') # After renaming the columns print(rankings_pd.columns) rankings_pd.head()>

산출:

웜퍼스 월드

방법 4: DataFrame add_prefix() 및 add_suffix() 함수를 사용하여 열 이름 바꾸기

이 예에서는 add_Sufix 및 add_Prefix 함수를 사용하여 열 이름을 바꾸고, 열 이름의 성과 이름에 추가해야 하는 접두사와 접미사를 전달합니다.

파이썬
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) rankings_pd = rankings_pd.add_prefix('col_') rankings_pd = rankings_pd.add_suffix('_1') # After renaming the columns rankings_pd.head()>

산출:

 col_test_1 col_odi_1 col_t20_1 0 India England Pakistan 1 South Africa India India 2 England New Zealand Australia 3 New Zealand South Africa England 4 Australia Pakistan New Zealand>

방법 5: Dataframe.columns.str.replace 함수를 사용하여 열 이름의 특정 텍스트 바꾸기

이 예에서는 바꾸기 함수를 사용하여 열 이름을 바꾸고 새 이름과 함께 이전 이름을 열의 매개 변수로 전달합니다.

파이썬
# Import pandas package import pandas as pd # Define a dictionary containing ICC rankings rankings = {'test': ['India', 'South Africa', 'England', 'New Zealand', 'Australia'], 'odi': ['England', 'India', 'New Zealand', 'South Africa', 'Pakistan'], 't20': ['Pakistan', 'India', 'Australia', 'England', 'New Zealand']} # Convert the dictionary into DataFrame rankings_pd = pd.DataFrame(rankings) # Before renaming the columns print(rankings_pd.columns) # df = rankings_pd rankings_pd.columns = rankings_pd.columns.str.replace('test', 'Col_TEST') rankings_pd.columns = rankings_pd.columns.str.replace('odi', 'Col_ODI') rankings_pd.columns = rankings_pd.columns.str.replace('t20', 'Col_T20') rankings_pd.head()>

산출: