Pandas 데이터프레임에서 특정 열 이름 변경하기
pandas에서 열 이름을 변경하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 다음과 같습니다.
rename() 메서드 사용:
import pandas as pd
# 데이터프레임 만들기
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 특정 열 이름 변경
df.rename(columns={'B': '새로운 열 이름'}, inplace=True)
# 결과 확인
print(df)
위 코드는 'B' 열 이름을 '새로운 열 이름'으로 변경합니다. inplace=True
매개변수를 사용하면 원본 데이터프레임이 변경되고, 생략하면 변경된 내용을 반환하는 새로운 데이터프레임이 생성됩니다.
set_axis() 메서드 사용:
import pandas as pd
# 데이터프레임 만들기
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 특정 열 이름 변경
df.set_axis(['새로운 열 이름', 'A', 'C'], axis=1, inplace=True)
# 결과 확인
print(df)
위 코드는 'B' 열 이름을 '새로운 열 이름'으로 변경하고, 축 1(열)을 기준으로 설정합니다.
columns 속성 직접 할당:
import pandas as pd
# 데이터프레임 만들기
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 특정 열 이름 변경
df.columns = ['새로운 열 이름', 'A', 'C']
# 결과 확인
print(df)
위 코드는 'B' 열 이름을 '새로운 열 이름'으로 변경하고, 데이터프레임의 columns
속성에 직접 새로운 열 이름 목록을 할당합니다.
주의 사항:
- 열 이름을 변경하면 데이터프레임의 인덱싱에 영향을 미칠 수 있습니다.
- 변경된 열 이름이 이미 다른 열 이름과 동일하면 오류가 발생할 수 있습니다.
- 명확하고 이해하기 쉬운 열 이름을 사용하는 것이 좋습니다.
예제 코드: 특정 열 이름 변경
import pandas as pd
# 데이터 생성
data = {'지역': ['서울', '부산', '인천'], '2020년 인구': [17500000, 3400000, 2900000], '2021년 인구': [17800000, 3450000, 2950000]}
# 데이터프레임 만들기
df = pd.DataFrame(data)
# 특정 열 이름 변경
df.rename(columns={'2020년 인구': '2020'}, inplace=True)
# 결과 확인
print(df)
설명:
- 이 코드는
지역
,2021년 인구
열을 가진 데이터프레임을 만듭니다. rename()
메서드를 사용하여2020년 인구
열 이름을2020
으로 변경합니다.inplace=True
매개변수를 사용하여 원본 데이터프레임이 변경됩니다.
출력:
지역 2020 2021년 인구
0 서울 17500000 17800000
1 부산 3400000 3450000
2 인천 2900000 2950000
import pandas as pd
# 데이터 생성
data = {'지역': ['서울', '부산', '인천'], '2020년 인구': [17500000, 3400000, 2900000], '2021년 인구': [17800000, 3450000, 2950000]}
# 데이터프레임 만들기
df = pd.DataFrame(data)
# 특정 열 이름 변경
df.set_axis(['지역', '2020', '2021'], axis=1, inplace=True)
# 결과 확인
print(df)
set_axis()
메서드를 사용하여 축 1(열)을 기준으로 새로운 열 이름 목록을 설정합니다.
지역 2020 2021
0 서울 17500000 17800000
1 부산 3400000 3450000
2 인천 2900000 2950000
import pandas as pd
# 데이터 생성
data = {'지역': ['서울', '부산', '인천'], '2020년 인구': [17500000, 3400000, 2900000], '2021년 인구': [17800000, 3450000, 2950000]}
# 데이터프레임 만들기
df = pd.DataFrame(data)
# 특정 열 이름 변경
df.columns = ['지역', '2020', '2021']
# 결과 확인
print(df)
columns
속성에 직접 새로운 열 이름 목록을 할당하여 열 이름을 변경합니다.
지역 2020 2021
0 서울 17500000 17800000
1 부산 340
Pandas 데이터프레임에서 특정 열 이름을 변경하는 대체 방법
dict 컴프리헨션 사용:
import pandas as pd
# 데이터 생성
data = {'지역': ['서울', '부산', '인천'], '2020년 인구': [17500000, 3400000, 2900000], '2021년 인구': [17800000, 3450000, 2950000]}
# 데이터프레임 만들기
df = pd.DataFrame(data)
# 새로운 열 이름 딕셔너리 만들기
new_columns = {'2020년 인구': '2020'}
# 열 이름 변경
df.rename(columns=new_columns, inplace=True)
# 결과 확인
print(df)
dict
컴프리헨션을 사용하여 기존 열 이름과 새 열 이름을 매핑하는 딕셔너리를 만듭니다.rename()
메서드를 사용하여 딕셔너리를 기반으로 열 이름을 변경합니다.
지역 2020 2021
0 서울 17500000 17800000
1 부산 3400000 3450000
2 인천 2900000 2950000
zip() 함수 사용:
import pandas as pd
# 데이터 생성
data = {'지역': ['서울', '부산', '인천'], '2020년 인구': [17500000, 3400000, 2900000], '2021년 인구': [17800000, 3450000, 2950000]}
# 데이터프레임 만들기
df = pd.DataFrame(data)
# 기존 열 이름과 새 열 이름 리스트 만들기
old_columns = ['2020년 인구']
new_columns = ['2020']
# 열 이름 변경
df.rename(columns=dict(zip(old_columns, new_columns)), inplace=True)
# 결과 확인
print(df)
zip()
함수를 사용하여 기존 열 이름과 새 열 이름을 튜플로 묶습니다.dict()
함수를 사용하여 튜플 목록을 딕셔너리로 변환합니다.
지역 2020 2021
0 서울 17500000 17800000
1 부산 3400000 3450000
2 인천 2900000 2950000
iloc 인덱싱 사용:
import pandas as pd
# 데이터 생성
data = {'지역': ['서울', '부산', '인천'], '2020년 인구': [17500000, 3400000, 2900000], '2021년 인구': [17800000, 3450000, 2950000]}
# 데이터프레임 만들기
df = pd.DataFrame(data)
# 특정 열 선택
col = df.iloc[:, 1]
# 열 이름 변경
col.name = '2020'
# 결과 확인
print(df)
- 이 코드는 `지역
python pandas