[Python] (메소드 정리 1편) 문자열 메소드와 판다스 문자열 메소드

전도운·2024년 7월 12일
0
post-custom-banner

파이썬을 공부하면서 내가 항상 어려워하는 부분은 데이터 타입별로 사용하는 메소드를 구분하는 것이다. 해당 데이터 타입에 맞지 않는 메소드를 사용해서 오류가 나면 왜 나는지 그때그때 찾아보다보니 머릿속에 내용에 체계적으로 정리가 되지 않았다. 이에 이번 기회에 확실하게 정리를 해보고자 한다.

  • 메소드란?

    • 메소드란 행동을 정의하는 함수이다. 의미에서도 알 수 있듯이 함수의 부분집합의 개념이며, 행동을 정의하기때문에 파라미터를 지정하지 않아도 작동하기도 한다.
      (사전에 default로 파라미터가 지정되어 있는 경우도 있다.)
  • 문자열 데이터의 메소드

    • 문자열 데이터란 (쌍)따옴표로 둘러싸인 데이터를 의미하며, 다음과 같이 문자열 뒤에 '.'을 붙이고 메소드명을 입력하여 사용한다.
      'string'.method()
  • Pandas(판다스) 문자열 데이터 메소드

    • 판다스 문자열 데이터란 판다스 데이터프레임(또는 시리즈)에 입력된 문자열데이터를 의미한다. 문자열 데이터와 동일해보이지만 그보다 문자 배열에 가깝다. 판다스 문자열 데이터 메소드는 개별 문자열에 적용되지않고 배열 전체에 적용되며 사용 시 다음과 같이 str이라는 메소드를 추가해야 한다. 예상했듯이 메소드 적용 시 결과 배열을 반환한다.
      df.column.str.method()
  • 문자열 데이터 메소드와 판다스 문자열 데이터 메소드 종류

    • 대부분의 문자열 메소드와 판다스 문자열 메소드가 동일한 구조이나, 일부 메소드는 문자열에만 적용되거나 판다스 문자열에만 적용되기 때문에 주의가 필요하다.

      문자열 메소드판다스 문자열 메소드기능
      .count().str.count()문자의 개수 세기
      함수 len(str).str.len()문자열의 길이를 반환
      .split().str.split()문자열을 특정 구분자를 기준으로 분할(구분자 제거)
      .partition().str.partition()문자열을 특정 구분자를 기준으로 분할(구분자 포함)
      .str.get()문자열의 특정 위치에 있는 문자를 반환
      .strip().str.strip()문자열 양 끝에 포함한 공백 제거
      .lstrip().str.lstrip()데이터의 앞에 포함된 공백 제거
      .rstrip.str.rstrip()데이터의 앞에 포함된 공백 제거
      .lower().str.lower()모든 문자열을 소문자로 변환
      .upper().str.upper()모든 문자열을 대문자로 변환
      .capitalize().str.capitalize()모든 문자열의 첫 글자를 대문자로 변환하고
      나머지 문자를 소문자로 변환
      .title().str.title()모든 문자열의 숫자가 아닌 첫 문자를 대문자로 변환하고
      나머지 문자를 소문자로 변환
      .str.contains()특정 문자열이 포함되어 있는지 확인
      .find().str.find()특정 문자열의 위치 반환(없을 시 -1 반환)
      .index().str.index()특정 문자열의 위치 반환(없을 시 오류반환)
      .replace().str.replace()특정 문자열을 다른 문자열로 대체
      .str.findall()정규 표현식과 일치하는 모든 문자열을 리스트로 반환
      .join()리스트 같은 iterable 인자를 전달하여 문자열로 연결
      .isxxxx().str.isxxx()숫자(digit), 알파벳(alpha),
      (참고자료 1) 비즈니스 데이터 분석 with Python
      (참고자료 2) 점프 투 파이썬
profile
의미 있는 한걸음을 추구합니다.
post-custom-banner

0개의 댓글