Pandas에서 하위 문자열 가져오기

Fariba Laiq 2024년2월15일
  1. Pandas DataFrame 열 값에서 Substring 가져오기
  2. 문자열에서 처음 N 문자 추출
  3. 문자열에서 마지막 N 문자 추출
  4. 문자열 중간에서 모든 하위 문자열 추출
Pandas에서 하위 문자열 가져오기

Pandas는 Python의 오픈 소스 데이터 분석 라이브러리입니다. 숫자 데이터에 대한 작업을 수행하는 많은 기본 제공 메서드를 제공합니다.

이 가이드에서는 다양한 접근 방식을 통해 pandas 데이터 프레임 열의 값에서 하위 문자열(문자열의 일부)을 가져옵니다. 문자열에서 의미 있는 하위 문자열을 추출하려는 경우에 유용할 수 있습니다.

Pandas DataFrame 열 값에서 Substring 가져오기

이 작업을 수행하기 위해 스트링 슬라이싱 방법을 사용합니다. str.slice() 메서드는 실제 문자열을 수정하지 않고 문자열의 일부를 반환합니다.

통사론:

# Python 3.x
df.column_name.str.slice(start_index, end_index)

대괄호([])와 함께 str 접근자를 사용하여 문자열 슬라이싱을 수행할 수도 있습니다.

# Python 3.x
df.column_name.str[start_index:end_index]

문자열에서 처음 N 문자 추출

다음 예제에는 전체 프로세서 이름으로 구성된 Pandas 데이터 프레임이 있습니다. 하위 문자열 intel(처음 5개 문자)을 얻으려면 05startend 인덱스로 각각 지정합니다.

대괄호 방식을 사용하는 경우에도 의미가 같기 때문에 끝 인덱스만 언급할 수 있습니다.

예제 코드:

# Python 3.x
import pandas as pd
import numpy as np

df = {"Processor": ["Intel Core i7", "Intel Core i3", "Intel Core i5", "Intel Core i9"]}
df = pd.DataFrame.from_dict(df)
display(df)
df["Brand Name"] = df.Processor.str.slice(0, 5)
display(df)

출력:

문자열에서 처음 N 문자 추출

문자열에서 마지막 N 문자 추출

문자열에서 brand modifier(마지막 두 문자)를 추출하려면 문자열 슬라이싱에서 negative indexing을 사용합니다. 시작 인덱스 -2(두 번째 마지막 문자의 인덱스)를 전달하고 끝 인덱스는 비워둡니다.

문자열에서 마지막 두 문자를 자동으로 가져옵니다.

예제 코드:

# Python 3.x
import pandas as pd
import numpy as np

df = {"Processor": ["Intel Core i7", "Intel Core i3", "Intel Core i5", "Intel Core i9"]}
df = pd.DataFrame.from_dict(df)
display(df)
df["Brand Modifier"] = df.Processor.str.slice(
    -2,
)
display(df)

출력:

문자열에서 마지막 N 문자 추출

문자열 중간에서 모든 하위 문자열 추출

문자열 중간에서 하위 문자열을 가져오려면 문자열 슬라이싱에서 시작 및 끝 인덱스를 지정해야 합니다. 여기에서 Core라는 단어를 얻으려면 610을 각각 시작 및 끝 인덱스로 언급합니다.

지정된 위치 사이(및 포함)의 하위 문자열을 가져옵니다.

예제 코드:

# Python 3.x
import pandas as pd
import numpy as np

df = {"Processor": ["Intel Core i7", "Intel Core i3", "Intel Core i5", "Intel Core i9"]}
df = pd.DataFrame.from_dict(df)
display(df)
df["Series"] = df.Processor.str[6:10]
display(df)

출력:

문자열 중간에서 모든 하위 문자열 추출

작가: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

관련 문장 - Pandas String