내장함수 str - 슬라이싱, find, contains, strip
- 파이썬 내장함수 str
- 넷플릭스 데이터 소개
- str 슬라이싱
- str.find()
- str.contains()
- str.strip()
파이썬 내장함수 str
파이썬의 내장함수인 str은 문자열을 처리하는 데 매우 편리합니다. 문자열 인덱싱, 문자열 포함 여부, 문자열 분리 등 빠른 속도로 문자열을 처리할 수 있습니다.
이 글에서 활용할 데이터는 캐글 데이터셋 중 Netflix Movies and TV Shows로 넷플릭스의 영화와 TV쇼에 관한 자료입니다.
str 슬라이싱
문자열을 원하는 길이만큼 슬라이싱할 때 사용합니다.
description 변수가 너무 길어서 일부만 나타내고 싶다면 다음과 같습니다.
netflix['description_rev'] = netflix['description'].str[:20]
netflix[['description_rev','description']].head()
str.find()
str.find는 문자열을 탐색하는 메서드입니다. 찾고자 하는 단어나 문장을 넣으면, 위치를 반환합니다. -1은 찾는 단어가 없음을 의미합니다.
description 변수에서 'father'이 포함된 행을 찾는다면, 결과는 우측 이미지와 같습니다. 첫 번째 행에서 'fathers'는 7번째에 위치하고 있습니다. 좌측 이미지는 father가 시작되는 위치입니다. -1은 'father가 없음'을 의미합니다.
netflix.description.str.find('father').head()
야구와 관련된 영화나 TV show를 찾고 싶다면, description 변수에서 -1을 반환하는 행을 필터링합니다.
netflix[netflix.description.str.find('baseball') != -1][['title','description']].head()
str.contains()
str.contains는 문자열의 포함여부를 탐색하는 메서드입니다. 위의 find와 비교해서 찾는 점은 비슷하지만, contains는 포함 여부만 True/False로 나타냅니다.
cast 변수에서 Lee Jung-jae를 찾는다면 다음과 같습니다. NA가 포함된 열의 경우, na=False 옵션을 추가합니다.
netflix[netflix.cast.str.contains('Lee Jung-jae',na=False)].head()
검색 결과에서 첫 번째 행의 cast 변수입니다. 오징어 게임의 배우들이네요.
print(netflix[netflix.cast.str.contains('Lee Jung-jae',na=False)].title.values[0])
netflix[netflix.cast.str.contains('Lee Jung-jae',na=False)].cast.values[0]
str.strip()
str.strip은 문자열을 제거하는 함수입니다. 공백 제거도 가능합니다.
show_id 변수에서 's'를 제거한다면,
netflix['show_id_rev'] = netflix['show_id'].str.strip('s')
netflix[['show_id_rev','show_id']].head()
공백도 제거할 수 있습니다. 괄호 안에 아무것도 쓰지 않으면, 공백 제거를 의미합니다.
netflix['duration'] = netflix['duration'] + ' ' # duration 변수에 강제 공백 추가
netflix['duration_rev'] = netflix['duration'].str.strip()
print('공백 제거 전: ',netflix.duration_rev.unique()[0:5])
print('='*100)
print('공백 제거 후: ',netflix.duration.unique()[0:5])
'Python' 카테고리의 다른 글
[파이썬] 엑셀 통합파일 시트명 리스트 생성 - pandas, ExcelFile (2) | 2025.03.23 |
---|---|
[파이썬] 디스플레이 옵션 설정 - pandas set_option, reset_option (2) | 2025.03.22 |
[파이썬] zip 파일 read, 압축/ 해제 - read_csv, compression, zipfile (0) | 2025.03.19 |
[파이썬] 허깅 페이스 모델을 활용한 텍스트 감정 분석 (5) | 2025.03.18 |
[파이썬] print문/출력문 로그 txt 저장 - open, file (0) | 2025.03.17 |