인공지능/파이썬

파이썬(Python) - Pandas의 문자함수

해피밀세트 2020. 3. 16. 17:39
반응형

 

pandas 문자함수


Series
변수이름.str.메소드

 

obj = Series([' hello','world ',' hello world '])

 

# 시리즈 안에있는 문자 길이 파악
obj.str.len()

 

 

# 앞,뒤 공백 제거
obj.str.strip()

# 앞,뒤 공백 제거 한뒤 문자 길이

obj.str.strip().str.len()

 

# 왼쪽 공백 제거
obj.str.lstrip()

# 왼쪽 공백 제거 한뒤 문자 길이

obj.str.lstrip().str.len()

 

# 오른쪽 공백 제거
obj.str.rstrip()

# 오른쪽 공백 제거 한뒤 문자 길이

obj.str.rstrip().str.len()

 

obj = obj.str.strip()

 

# 소문자로 변경
obj.str.lower()

 

# 대문자로 변경

obj.str.upper()

 

# 첫글자는 대문자 / 나머지는 소문자로 변경
obj.str.capitalize()

 

# 단어별 첫글자는 대문자 / 나머지는 소문자로 변경obj.str.title()

 

# 소문자 <-> 대문자 로 변경

obj.str.swapcase()

 

# 문자를 다른 문자로 대체
obj.str.replace('hello','안녕')

 

# 왼쪽부터 글자를 검색한 후 인덱스 번호를 리턴(없으면 -1)
obj.str.find('l')
obj.str.find('l',4)

 

# 오른쪽부터 글자를 검색한 후 인덱스 번호를 리턴(없으면 -1)

obj.str.rfind('l')

 

# 찾은 문자를 반환
obj.str.findall('l')

 

#글자로 시작되는지 여부 파악
obj.str.startswith('h')

 

#글자로 끝나는지 여부 파악
obj.str.endswith('d')

 

# 글자가 포함되어 있는지 여부 파악(대소문자 구분함)
obj.str.contains('w')
obj.str.contains('W') 

 

# 대소문자를 구분하지 않고 찾겠다.(기본값은 소문자)

obj.str.contains('W', case = False)

 

# regex:정규식 표현을 이용해서 찾겠다.

obj.str.contains('h|w', regex = True) 

 

# 맨 앞부터 같은 패턴인지 여부 파악(대소문자 구분함)
obj.str.match('w')

 

 

# 빈 부분에 문자값 채우기obj.str.pad(width=15,side='left',fillchar='*')      # 왼쪽obj.str.pad(width=15,side='right',fillchar='*')    # 오른쪽

 

# 글자를 가운데에 맞추고 양 옆에 문자값 채우기obj.str.center(width=15,fillchar='_')

 

# 위치에 정렬하고 남은곳에 문자 채우기obj.str.ljust(width=10,fillchar='_')        # lpad
obj.str.rjust(width=10,fillchar='_')        # rlpad

 

 

 

obj = Series([7,'7','seven','SEVEN','Seven','seven7','칠','칠 7',' ','#7'])

 

# 문자 또는 숫자로 구성 여부(공백문자가 포함되면 False)
obj.str.isalnum()

 

 

# 문자로 구성 여부(공백문자가 포함되면 False)
obj.str.isalpha()

 

# 숫자로 구성 여부(공백문자가 포함되면 False)
obj.str.isnumeric()  # 그냥 숫자는 False
obj.str.isdecimal()
obj.str.isdigit()

 

# 소문자로만 구성 여부
obj.str.islower()

 

# 대문자로만 구성 여부

obj.str.isupper()

 

# 첫글자 대문자 /나머지 소문자 구성 여부

obj.str.istitle()

 

# 공백으로만 구성 여부
obj.str.isspace()

 

 

# 지정된 위치 값만 반환
obj.str.get(0)

 

# 인덱스 사이값만 반환
obj.str.slice(start = 0, stop = 2)
obj.str.slice(0,2)

 

 

# 인덱스 사이값을 다른 값으로 대체obj.str.slice_replace(start=0, stop=2,repl='77')

 

obj = Series(['www.python.org','www.naver.com'])

 

# 입력한 문자를 기준으로 자르기
obj.str.split('.')

 

 # 각각의 열로 분리
obj.str.split('.',expand = True)

 

# 입력한 문자를 기준으로 자르되 입력한 문자도 출력
# 앞부분 / 분리자 / 뒷부분 이렇게 3부분으로 나온다.
obj.str.partition('.')

 

 

반응형