Pandas에서 where() 함수를 사용하는 방법(예제 포함)
Where() 함수는 Pandas DataFrame의 특정 값을 바꾸는 데 사용할 수 있습니다.
이 함수는 다음 기본 구문을 사용합니다.
df. where (cond, other=nan)
cond가 True인 pandas DataFrame의 각 값에 대해 원래 값이 유지됩니다.
cond가 False인 각 값에 대해 원래 값은 다른 인수에 지정된 값으로 대체됩니다.
다음 예는 다음 pandas DataFrame에서 실제로 이 구문을 사용하는 방법을 보여줍니다.
import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame df points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
예시 1: DataFrame 전체에 걸쳐 값 바꾸기
다음 코드는 Where() 함수를 사용하여 전체 pandas DataFrame에서 특정 조건을 충족하지 않는 모든 값을 NaN 값으로 바꾸는 방법을 보여줍니다.
#keep values that are greater than 7, but replace all others with NaN df. where (df>7) points assists rebounds 0 25 NaN 11.0 1 12 NaN 8.0 2 15 NaN 10.0 3 14 9.0 NaN 4 19 12.0 NaN 5 23 9.0 NaN 6 25 9.0 9.0 7 29 NaN 12.0
다른 인수를 사용하여 값을 NaN이 아닌 다른 값으로 바꿀 수도 있습니다.
#keep values that are greater than 7, but replace all others with 'low' df. where (df>7, other=' low ') points assists rebounds 0 25 low 11 1 12 low 8 2 15 low 10 3 14 9 low 4 19 12 low 5 23 9 low 6 25 9 9 7 29 low 12
예시 2: 특정 DataFrame 열의 값 바꾸기
다음 코드는 Where() 함수를 사용하여 DataFrame의 특정 열에서 특정 조건을 충족하지 않는 모든 값을 바꾸는 방법을 보여줍니다.
#keep values greater than 15 in 'points' column, but replace others with 'low' df[' points '] = df[' points ']. where (df[' points ']>15, other=' low ') #view DataFrame df points assists rebounds 0 25 5 11 1 low 7 8 2 low 7 10 3 low 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
pandaswhere() 함수에 대한 전체 온라인 설명서는 여기에서 찾을 수 있습니다.
추가 리소스
다음 튜토리얼에서는 Pandas에서 다른 일반적인 기능을 사용하는 방법을 설명합니다.
Pandas에서 explain() 함수를 사용하는 방법
Pandas에서 idxmax() 함수를 사용하는 방법
Pandas에서 선택한 열에 함수를 적용하는 방법