본문 바로가기
판다스/판다스 팁

[pandas] 문자열에서 정규 표현식으로 그룹을 활용하는 방법

by 김판다t 2024. 2. 27.

 

예제

 

import pandas as pd
data1 = ['Home: 롯데, Away: 한화', 'Home: 삼성, Away: 기아']
s = pd.Series(data1)

 

 

s

0    Home: 롯데, Away: 한화
1    Home: 삼성, Away: 기아
dtype: object

 

 

홈팀과 어웨이팀을 맞교환하자.

 

 

 

다양한 방법이 있겠지만, 정규 표현식으로 그룹을 나눠 해당 그룹을 맞바꾼 결과로 해결할 수 있다.

 

문자열 대체를 위해 str.replace 함수를 정규 표현식으로 사용하자.

 

df['팀'].str.replace(r'Home: (.+), Away: (.+)', r'Home: \2, Away: \1', regex=True)

 

 

out:

 

0    Home: 한화, Away: 롯데
1    Home: 기아, Away: 삼성
Name: 팀, dtype: object

 

 

 

홈팀과 원정팀이 맞교환 되었다.

 

정규 표현식에서 '\1' 혹은 '\2'와 같은 메타 문자로 그룹을 지칭할 수 있다.