Pandas: 값으로 시리즈를 필터링하는 방법


다음 방법을 사용하여 Pandas 시리즈의 값을 필터링할 수 있습니다.

방법 1: 단일 조건을 기준으로 값 필터링

 #filter for values equal to 7
my_series. loc [ lambda x:x == 7]

방법 2: “OR” 조건을 사용하여 값 필터링

 #filter for values less than 10 or greater than 20
my_series. loc [ lambda x: (x < 10) | (x > 20)]

방법 3: “AND” 조건을 사용하여 값 필터링

 #filter for values greater than 10 and less than 20
my_series. loc [ lambda x: (x > 10) & (x < 20)] 

방법 4: 목록에 포함된 값 필터링

 #filter for values that are equal to 4, 7, or 23
my_series[my_series. isin ([4, 7, 23])]

이 튜토리얼에서는 다음 Pandas 시리즈에서 실제로 각 방법을 사용하는 방법을 설명합니다.

 import pandas as pd

#create pandas Series
data = pd. Series ([4, 7, 7, 12, 19, 23, 25, 30])

#view pandas Series
print (data)

0 4
1 7
2 7
3 12
4 19
5 23
6 25
7 30
dtype: int64

예시 1: 조건에 따라 값 필터링

다음 코드는 7과 같은 값에 대해 pandas 시리즈를 필터링하는 방법을 보여줍니다.

 #filter for values equal to 7
data. loc [ lambda x:x == 7]

1 7
2 7
dtype: int64

7 이 아닌 값을 필터링할 수도 있습니다.

 #filter for values not equal to 7
data. loc [ lambda x:x != 7]

0 4
3 12
4 19
5 23
6 25
7 30
dtype: int644

예시 2: “OR” 조건을 사용하여 값 필터링

다음 코드는 10보다 작 거나 20보다 큰 값에 대해 pandas 시리즈를 필터링하는 방법을 보여줍니다.

 #filter for values less than 10 or greater than 20
data. loc [ lambda x: (x < 10) | (x > 20)]

0 4
1 7
2 7
5 23
6 25
7 30
dtype: int64

예시 3: “AND” 조건을 사용하여 값 필터링

다음 코드는 10보다 크고 20보다 작은 값에 대해 pandas 시리즈를 필터링하는 방법을 보여줍니다.

 #filter for values greater than 10 and less than 20
data. loc [ lambda x: (x > 10) & (x < 20)]

3 12
4 19
dtype: int64

예시 4: 목록에 포함된 값 필터링

다음 코드는 목록에 포함된 값에 대해 Pandas 시리즈를 필터링하는 방법을 보여줍니다.

 #filter for values that are equal to 4, 7, or 23
data[data. isin ([4, 7, 23])]

0 4
1 7
2 7
5 23
dtype: int64

추가 리소스

다음 튜토리얼에서는 Python에서 다른 일반적인 필터링 작업을 수행하는 방법을 설명합니다.

특정 문자열이 포함된 Pandas DataFrame 행을 필터링하는 방법
여러 조건에서 Pandas DataFrame을 필터링하는 방법
Pandas DataFrame에서 “NOT IN” 필터를 사용하는 방법

의견을 추가하다

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