Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python Pandas 데이터프레임 열을 대문자로 변환하는 방법

이 튜토리얼에서는 Pandas 데이터프레임에서 특정 열의 문자열 값을 대문자로 변환하는 다양한 방법을 알아봅니다. 예를 들어, 이름(Name) 열에 저장된 값들을 모두 대문자로 바꾸는 작업을 실제 코드와 함께 단계별로 살펴보겠습니다.

방법 1: str.upper() 메서드 사용

Pandas Series에서 제공하는 str.upper() 메서드를 사용하면 열 전체의 문자열을 한 번에 대문자로 변환할 수 있습니다. 벡터화 연산으로 처리되기 때문에 가장 간결하고 빠른 방식입니다.

예제 코드

# pandas 패키지 임포트
import pandas as pd

# 데이터프레임에 사용할 데이터
data = {
    'Name': ['Hafeez', 'Aslan', 'Kareem'],
    'Age': [19, 21, 18],
    'Profession': ['Developer', 'Engineer', 'Artist']
}

# 데이터프레임 생성
data_frame = pd.DataFrame(data)

# 변환 전 데이터프레임 출력
print('---------------------Before-------------------')
print(data_frame)
print()

# Name 열의 문자열을 대문자로 변환
data_frame['Name'] = data_frame['Name'].str.upper()

# 변환 후 데이터프레임 출력
print('---------------------After-------------------')
print(data_frame)

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

---------------------Before-------------------
Name Age Profession
0 Hafeez 19 Developer
1 Aslan 21 Engineer
2 Kareem 18 Artist

---------------------After-------------------
Name Age Profession
0 HAFEEZ 19 Developer
1 ASLAN 21 Engineer
2 KAREEM 18 Artist

방법 2: apply() 메서드 사용

데이터프레임의 apply() 메서드에 람다(lambda) 함수를 전달하여 동일한 결과를 얻을 수도 있습니다. 이 방법은 각 요소에 개별적으로 함수를 적용하므로, 더 복잡한 변환 로직이 필요할 때 유용하게 활용됩니다.

예제 코드

# pandas 패키지 임포트
import pandas as pd

# 데이터프레임에 사용할 데이터
data = {
    'Name': ['Hafeez', 'Aslan', 'Kareem'],
    'Age': [19, 21, 18],
    'Profession': ['Developer', 'Engineer', 'Artist']
}

# 데이터프레임 생성
data_frame = pd.DataFrame(data)

# 변환 전 데이터프레임 출력
print('---------------------Before-------------------')
print(data_frame)
print()

# Name 열의 문자열을 대문자로 변환
data_frame['Name'] = data_frame['Name'].apply(lambda name: name.upper())

# 변환 후 데이터프레임 출력
print('---------------------After-------------------')
print(data_frame)

실행 결과

실행 결과는 앞선 방법과 완전히 동일합니다.

---------------------Before-------------------
Name Age Profession
0 Hafeez 19 Developer
1 Aslan 21 Engineer
2 Kareem 18 Artist

---------------------After-------------------
Name Age Profession
0 HAFEEZ 19 Developer
1 ASLAN 21 Engineer
2 KAREEM 18 Artist

마무리

이번 튜토리얼에서는 Pandas 데이터프레임의 특정 열을 대문자로 변환하는 두 가지 방법, 즉 str.upper()apply() 메서드를 살펴보았습니다. 일반적인 경우에는 성능이 좋고 코드가 간결한 str.upper()를 사용하는 것이 권장되며, 조건 분기 등 복잡한 처리가 필요하다면 apply()를 활용하면 됩니다. 내용 중 궁금한 점이 있다면 댓글로 남겨주세요.