Pandas DataFrame에서 If-Else 조건 적용
-
DataFrame.loc[]
를 사용하여 Python의 Pandas DataFrame에서if-else
조건을 적용합니다. -
DataFrame.apply()
를 사용하여 Python의 Pandas DataFrame에서if-else
조건을 적용합니다. -
NumPy.select()
를 사용하여 Python의 Pandas DataFrame에서if-else
조건을 적용합니다. -
apply()
와 함께lambda
를 사용하여 Python의 Pandas DataFrame에서if-else
조건을 적용합니다.
Pandas는 Python의 오픈 소스 데이터 분석 라이브러리입니다. 숫자 데이터에 대한 작업을 수행하는 많은 기본 제공 메서드를 제공합니다.
경우에 따라 Pandas 데이터 프레임에 if-else
조건을 적용하여 일부 조건에 따라 레코드를 필터링하거나 계산을 수행하려고 합니다. Python은 Pandas 데이터 프레임에서 if-else
를 사용하는 다양한 방법을 제공합니다.
DataFrame.loc[]
를 사용하여 Python의 Pandas DataFrame에서 if-else
조건을 적용합니다.
[loc[]
]는 행 또는 열 그룹을 선택하거나 필터링하는 데 사용되는 Pandas 데이터 프레임의 속성입니다. 다음 예에서는 이 속성을 사용하여 지정된 조건을 충족하는 레코드를 필터링합니다.
여기에는 학생들의 데이터로 구성된 Pandas 데이터 프레임이 있습니다. loc[]
를 사용하면 한 번에 하나의 조건만 적용할 수 있습니다.
첫 번째 조건에서 60점 이상의 점수를 받은 학생을 필터링하고 결과를 새 열 결과
에 통과
로 할당합니다. 마찬가지로 다른 조건에서 나머지 학생 결과에 대해 실패
를 설정합니다.
예제 코드:
# Python 3.x
import pandas as pd
df = pd.DataFrame(
{"Name": ["Robert", "Sam", "Alia", "Jhon", "Smith"], "Marks": [60, 41, 79, 51, 88]}
)
display(df)
df.loc[df["Marks"] >= 60, "Result"] = "Pass"
df.loc[df["Marks"] < 60, "Result"] = "Fail"
display(df)
출력:
DataFrame.apply()
를 사용하여 Python의 Pandas DataFrame에서 if-else
조건을 적용합니다.
apply()
메서드는 데이터 프레임의 축(행 또는 열)을 사용하여 함수를 적용합니다. if-else
조건으로 구성된 정의된 함수를 만들어 Pandas 데이터 프레임에 적용할 수 있습니다.
여기에서 assign_Result()
함수를 정의하고 이를 Marks
열에 적용했습니다. 이 함수는 Marks
를 기반으로 결과를 할당하고 모든 열 행에 대해 이를 호출하는 if-else
조건으로 구성됩니다.
예제 코드:
# Python 3.x
import pandas as pd
df = pd.DataFrame(
{"Name": ["Robert", "Sam", "Alia", "Jhon", "Smith"], "Marks": [60, 41, 79, 51, 88]}
)
display(df)
def assign_Result(marks):
if marks >= 60:
result = "Pass"
else:
result = "Fail"
return result
df["Result"] = df["Marks"].apply(assign_Result)
display(df)
출력:
NumPy.select()
를 사용하여 Python의 Pandas DataFrame에서 if-else
조건을 적용합니다.
조건이 True
인 경우 목록의 열과 다른 목록의 해당 값에 대해 여러 조건을 정의할 수 있습니다. select()
메서드는 조건 목록과 해당 값 목록을 인수로 가져와 Result
열에 할당합니다.
예제 코드:
# Python 3.x
import pandas as pd
import numpy as np
df = pd.DataFrame(
{"Name": ["Robert", "Sam", "Alia", "Jhon", "Smith"], "Marks": [60, 41, 79, 51, 88]}
)
display(df)
conditions = [(df["Marks"] >= 60), (df["Marks"] < 60)]
result = ["Pass", "Fail"]
df["Result"] = np.select(conditions, result)
display(df)
출력:
apply()
와 함께 lambda
를 사용하여 Python의 Pandas DataFrame에서 if-else
조건을 적용합니다.
람다
는 단일 표현식으로 구성된 작은 익명 함수입니다. Marks
열에서 apply()
와 함께 lambda
를 사용합니다.
x
에는 lambda
표현식의 표시가 포함됩니다. if-else
조건을 x
에 적용하고 그에 따라 결과
열에 결과를 할당했습니다.
예제 코드:
# Python 3.x
import pandas as pd
import numpy as np
df = pd.DataFrame(
{"Name": ["Robert", "Sam", "Alia", "Jhon", "Smith"], "Marks": [60, 41, 79, 51, 88]}
)
display(df)
df["Result"] = df["Marks"].apply(lambda x: "Pass" if x >= 60 else "Fail")
display(df)
출력:
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