파이썬 판다스 DataFrame의 컬럼(열), 인덱스(행) 이름을 변경하는 방법을 알아보겠습니다.
처음에 설정한 컬럼 이름이나 인덱스 이름을 변경하기 위해서는 rename() 메서드를 사용합니다.
샘플 데이터를 작성해 rename() 사용 방법을 확인해보겠습니다.
import pandas as pd
df = pd.DataFrame({'A': [11, 21, 31],
'B': [12, 22, 32],
'C': [13, 23, 33]},
index=['ONE', 'TWO', 'THREE'])
print(df)
# A B C
# ONE 11 12 13
# TWO 21 22 23
# THREE 31 32 33
rename() 메서드
rename() 메서드에는 변경하고 싶은 컬럼 이름 또는 인덱스를 딕셔너리 형태로 지정합니다.
import pandas as pd
df = pd.DataFrame({'A': [11, 21, 31],
'B': [12, 22, 32],
'C': [13, 23, 33]},
index=['ONE', 'TWO', 'THREE'])
# 컬럼 이름, 인덱스 이름 변경
df_new = df.rename(columns={'A': 'a'}, index={'ONE': 'one'})
print(df_new)
# a B C
# one 11 12 13
# TWO 21 22 23
# THREE 31 32 33
# 변경전 원본 값
print(df)
# A B C
# ONE 11 12 13
# TWO 21 22 23
# THREE 31 32 33
인덱스 이름을 변경하고 싶은 경우에는 index를 설정합니다.
컬럼 이름을 변경하고 싶은 경우에는 colunms를 설정합니다.
원본 데이터는 변경되지 않습니다.
컬럼 이름과 인덱스 이름이 변경된 DataFrame을 반환합니다.
원본 DataFrame을 변경하고 싶은 경우에는 inplace를 True로 설정합니다.
import pandas as pd
df = pd.DataFrame({'A': [11, 21, 31],
'B': [12, 22, 32],
'C': [13, 23, 33]},
index=['ONE', 'TWO', 'THREE'])
df.rename(columns={'A': 'a'}, index={'ONE': 'one'}, inplace=True)
print(df)
# a B C
# one 11 12 13
# TWO 21 22 23
# THREE 31 32 33
# A B C
# ONE 11 12 13
# TWO 21 22 23
# THREE 31 32 33
여러개 변경
동시에 복수의 인덱스 또는 컬럼 이름을 변경할 수 있습니다.
import pandas as pd
df = pd.DataFrame({'A': [11, 21, 31],
'B': [12, 22, 32],
'C': [13, 23, 33]},
index=['ONE', 'TWO', 'THREE'])
print(df.rename(columns={'A': 'a', 'C': 'c'}))
# a B c
# ONE 11 12 13
# TWO 21 22 23
# THREE 31 32 33
딕셔너리 형태로 변경하고 싶은 대상과 변경 문자열을 지정하기 때문에 원하는 만큼 추가할 수 있습니다.
댓글