내장함수 str - len, split, replace
[파이썬] 내장함수 str - 슬라이싱, find, contains, strip에 이어서 작성합니다.
- str.len()
- str.split()
- str.replace()
str.len()
str.len은 문자열의 길이를 반환합니다. 가장 긴/짧은 문자열을 확인할 때 유용합니다.
title 변수의 길이를 확인하는 title_len 변수 생성을 한다면 다음과 같습니다.
netflix['title_len'] = netflix['title'].str.len()
netflix[['title','title_len']].head()
title 변수에서 길이가 가장 긴 제목을 찾는다면, 결과는 다음과 같습니다. 넷플릭스 데이터에서 가장 긴 제목은 Chris Smith 감독의 'Jim & Andy: The Great Beyond - Featuring a Very Special, Contractually Obligated Mention of Tony Clifton'입니다.
len_max = netflix.title.str.len().max()
print('longest title: ',len_max)
print(netflix[netflix.title.str.len() == len_max].title.values[0])
str.split()
str.split은 문자열 분리 메서드입니다. 특정 문자를 기준으로 컬럼을 분리할 수 있습니다.
date_added 변수가 연월일 변수이므로 yyyy 변수와 mmdd 변수를 생성하기 위해 date_added 변수에서 ','를 기준으로 분리하면,
netflix['mmdd'] = netflix.date_added.str.split(',').str[0]
netflix['yyyy'] = netflix.date_added.str.split(',').str[1]
netflix[['show_id','date_added','mmdd','yyyy']].head()
위에서 생성한 mmdd 컬럼이 month와 date가 붙어있으므로 공백을 기준으로 분리하면 다음과 같습니다.
netflix['mm'] = netflix.mmdd.str.split(' ').str[0]
netflix['dd'] = netflix.mmdd.str.split(' ').str[1]
netflix[['show_id','mmdd','mm','dd']].head()
str.replace()
str.replace는 문자열을 대체하는 메서드입니다. 특정 문자를 대체하고 싶을 때 사용합니다.
type 변수는 'Movie', 'TV Show'로 이루어져 있습니다. 이 변수를 한국어로 변경하여 type_kor 변수를 생성하면 다음과 같습니다.
전체 코드
내장함수 str - kaggle 넷플릭스 데이터 활용 #1, #2의 전체 코드입니다.
netflix = pd.read_csv('netflix_titles.csv')
display(netflix.head())
### str 슬라이싱
netflix['description_rev'] = netflix['description'].str[:20]
### str find
netflix.description.str.find('father').head()
netflix[netflix.description.str.find('baseball') != -1][['title','description']].head()
### str contains
netflix[netflix.cast.str.contains('Lee Jung-jae',na=False)][['title','cast']].head()
print(netflix[netflix.cast.str.contains('Lee Jung-jae',na=False)].title.values[0])
### str strip
netflix['show_id_rev'] = netflix.show_id.str.strip('s')
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])
### str len
netflix['title_len'] = netflix['title'].str.len()
len_max = netflix.title.str.len().max()
print('longest title: ',len_max)
netflix[netflix.title.str.len() == len_max].title.values[0]
### str split
netflix['mmdd'] = netflix.date_added.str.split(',').str[0]
netflix['yyyy'] = netflix.date_added.str.split(',').str[1]
netflix[['show_id','date_added','mmdd','yyyy']].head()
netflix['mm'] = netflix.mmdd.str.split(' ').str[0]
netflix['dd'] = netflix.mmdd.str.split(' ').str[1]
### str replace
netflix['type_kor'] = netflix['type']
netflix['type_kor'] = netflix.type_kor.str.replace('Movie','영화')
netflix['type_kor'] = netflix.type_kor.str.replace('TV Show','티비프로그램')
'Python' 카테고리의 다른 글
[파이썬] 파일 이동, 폴더 변경 - shutil (2) | 2025.04.04 |
---|---|
[파이썬] datetime 타입 변환/ 날짜 요소 추출(dt)/ 현재 날짜, 시간 표현 (2) | 2025.04.04 |
[파이썬] 히트맵 그래프, 원하는 색상 설정 - seaborn, matplotlib (4) | 2025.04.02 |
[파이썬] Daum 뉴스 기사 제목, 본문 크롤링 - BeautifulSoup (0) | 2025.04.01 |
[파이썬] 특정 폴더 안의 확장자별 파일 리스트 생성 - os.listdir() (2) | 2025.03.28 |