Pandas: 특정 문자열이 포함된 줄을 삭제하는 방법


다음 구문을 사용하여 Pandas DataFrame에서 특정 문자열이 포함된 행을 제거할 수 있습니다.

 df[df[" col "]. str . contains (" this string ") == False ]

이 튜토리얼에서는 다음 DataFrame과 함께 이 구문을 실제로 사용하는 몇 가지 예를 설명합니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C'],
                   ' conference ': ['East', 'East', 'East', 'West', 'West', 'East'],
                   ' points ': [11, 8, 10, 6, 6, 5]})

#view DataFrame
df

        team conference points
0 A East 11
1 A East 8
2 A East 10
3 B West 6
4 B West 6
5 C East 5

예시 1: 특정 문자열이 포함된 행 제거

다음 코드는 팀 열에 “A”가 포함된 DataFrame의 모든 행을 제거하는 방법을 보여줍니다.

 df[df[" team "]. str . contains (" A ")== False ]

        team conference points
3 B West 6
4 B West 6
5 C East 5

예 2: 목록에서 문자열을 포함하는 행 제거

다음 코드는 팀 열에 “A” 또는 “B”가 포함된 DataFrame의 모든 행을 제거하는 방법을 보여줍니다.

 df[df[" team "]. str . contains (" A|B ")== False ]

	team conference points
5 C East 5

예 3: 부분 문자열이 포함된 행 제거

이전 예에서는 하나 이상의 문자열과 정확히 일치하는 행을 기반으로 행을 삭제했습니다.

그러나 부분 문자열이 포함된 줄을 제거하려면 다음 구문을 사용할 수 있습니다.

 #identify partial string to look for
discard = [" Wes "]

#drop rows that contain the partial string "Wes" in the conference column
df[~df. conference . str . contains (' | ' .join (discard))]

team conference points
0 A East 11
1 A East 8
2 A East 10
5 C East 5

이 페이지 에서 더 많은 팬더 튜토리얼을 찾을 수 있습니다.

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다