Pandas DataFrame DataFrame.where() 함수
Minahil Noor
2023년1월30일
-
pandas.DataFrame.where()
구문 -
예제 코드:
DataFrame.where()
-
예제 코드: 값을 지정하는
DataFrame.where()
-
예제 코드: 여러 조건을 사용하는
DataFrame.where()
Python Pandas DataFrame.where()
함수는 조건을 매개 변수로 허용하고 결과를 생성합니다. 따라서. DataFrame
의 각 값에 대한 조건을 확인하고 조건을 수락하는 값을 선택합니다. 기능은 if-else
문과 유사합니다. 조건을 받아들이지 않는 값은 기본적으로 NaN
값으로 대체됩니다.
pandas.DataFrame.where()
구문
DataFrame.where(
cond,
other=NaN,
inplace=False,
axis=None,
level=None,
errors="raise",
try_cast=False,
)
매개 변수
이 기능에는 여러 매개 변수가 있습니다. 모든 매개 변수의 기본값은 위에 언급되어 있습니다.
cond |
부울Series 또는DataFrame , 배열과 유사한 구조 또는 콜 러블입니다. DataFrame 의 각 값을 확인하기위한 조건 / 조건을 나타냅니다. 조건이 True 이면 원래 값이 대체되지 않습니다. 그렇지 않으면NaN 값으로 대체됩니다. |
other |
스칼라,Series /DataFrame 또는 콜 러블입니다. 조건이 False 인 경우 원래 값에 배치 될 값을 나타냅니다. |
inplace |
부울 값입니다. 데이터 작업에 대해 알려줍니다. True 이면 스스로 변경합니다. |
axis |
정수 값입니다. 작업 축에 대해 행 또는 열을 알려줍니다. |
level |
정수 값입니다. 레벨에 대해 알려줍니다. |
errors |
문자열입니다. 오류에 대해 알려줍니다. 두 가지 옵션을 허용합니다: raise 또는ignore . 값이 raise 이면 예외가 발생할 수 있습니다. 값이 ignore 이면 예외를 무시하고 오류가 있으면 원래 객체를 반환합니다. |
try_cast |
부울 값입니다. 가능한 경우 함수의 출력을 원래 입력 유형으로 캐스트합니다. |
반환
조건에 따라 변경된 DataFrame
을 반환합니다.
예제 코드: DataFrame.where()
다음 코드 예제에서 구현하여이 함수에 대해 자세히 알아 봅니다.
import pandas as pd
dataframe=pd.DataFrame({
'A':
{0: 60,
1: 100,
2: 80,
3: 78,
4: 95,
5: 45,
6: 67,
7: 12,
8: 23,
9: 50},
'B':
{0: 90,
1: 75,
2: 82,
3: 64,
4: 45,
5: 35,
6: 74,
7: 52,
8: 93,
9: 18}
})
print(dataframe)
DataFrame
의 예는 다음과 같습니다.
A B
0 60 90
1 100 75
2 80 82
3 78 64
4 95 45
5 45 35
6 67 74
7 12 52
8 23 93
9 50 18
이 함수에는 하나의 필수 매개 변수 즉 cond
가 있습니다.
import pandas as pd
dataframe = pd.DataFrame(
{
"A": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95, 5: 45, 6: 67, 7: 12, 8: 23, 9: 50},
"B": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45, 5: 35, 6: 74, 7: 52, 8: 93, 9: 18},
}
)
dataframe1 = dataframe.where(dataframe > 50)
print(dataframe1)
출력:
A B
0 60.0 90.0
1 100.0 75.0
2 80.0 82.0
3 78.0 64.0
4 95.0 NaN
5 NaN NaN
6 67.0 74.0
7 NaN 52.0
8 NaN 93.0
9 NaN NaN
50보다 크지 않은 값, 즉 조건을 충족하지 않는 값은 NaN
값으로 대체됩니다.
예제 코드: 값을 지정하는DataFrame.where()
import pandas as pd
dataframe = pd.DataFrame(
{
"A": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95, 5: 45, 6: 67, 7: 12, 8: 23, 9: 50},
"B": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45, 5: 35, 6: 74, 7: 52, 8: 93, 9: 18},
}
)
dataframe1 = dataframe.where(dataframe > 50, other=0)
print(dataframe1)
출력:
A B
0 60 90
1 100 75
2 80 82
3 78 64
4 95 0
5 0 0
6 67 74
7 0 52
8 0 93
9 0 0
여기서 조건을 충족하지 않는 값은 사용자 정의 값으로 대체됩니다.
예제 코드: 여러 조건을 사용하는DataFrame.where()
import pandas as pd
dataframe = pd.DataFrame(
{
"A": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95, 5: 45, 6: 67, 7: 12, 8: 23, 9: 50},
"B": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45, 5: 35, 6: 74, 7: 52, 8: 93, 9: 18},
}
)
dataframe1 = dataframe.where((dataframe == 80) | (dataframe < 50), other=0)
print(dataframe1)
출력:
A B
0 0 0
1 0 0
2 80 0
3 0 0
4 0 45
5 45 35
6 0 0
7 12 0
8 23 0
9 0 18
반환 된DataFrame
에는 두 조건을 모두 충족하는 값이 포함됩니다.