Pandas에서 사례 설명을 작성하는 방법(예제 포함)
Case 문은 조건을 순환하고 첫 번째 조건이 충족되면 값을 반환하는 문 유형입니다.
Pandas DataFrame에서 Case 문을 구현하는 가장 간단한 방법은 다음 기본 구문을 사용하는 NumPywhere() 함수를 사용하는 것입니다.
df[' new_column '] = np. where (df[' col2 ']<9, 'value1', n.p. where (df[' col2 ']<12, 'value2', n.p. where (df[' col2 ']<15, 'value3', 'value4')))
이 특정 함수는 col2 라는 열의 값을 보고 다음을 반환합니다.
- col2의 값이 9보다 작은 경우 “ value1 ”
- col2의 값이 12보다 작은 경우 “ value2 ”
- col2의 값이 15보다 작은 경우 ” value3 “
- 이전 조건 중 어느 것도 true가 아닌 경우 ” value4 “
다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.
예: Pandas의 사례 문
다음과 같은 팬더 DataFrame이 있다고 가정합니다.
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' player ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ' points ': [6, 8, 9, 9, 12, 14, 15, 17, 19, 22]}) #view DataFrame df player points 0 1 6 1 2 8 2 3 9 3 4 9 4 5 12 5 6 14 6 7 15 7 8 17 8 9 19 9 10 22
다음 구문을 사용하여 포인트 열의 값에 따라 값이 결정되는 class 라는 새 열을 생성하는 Case 문을 작성할 수 있습니다.
#add 'class' column using case-statement logic df[' class '] = np. where (df[' points ']<9, 'Bad', n.p. where (df[' points ']<12, 'OK', n.p. where (df[' points ']<15, 'Good', 'Great'))) #view updated DataFrame df player points class 0 1 6 Bad 1 2 8 Bad 2 3 9 OK 3 4 9 OK 4 5 12 Good 5 6 14 Good 6 7 15 Great 7 8 17 Great 8 9 19 Great 9 10 22 Great
Case 문은 포인트 열의 값을 보고 다음을 반환했습니다.
- 포인트 열의 값이 9 미만인 경우 ” 나쁨 “
- 포인트 열의 값이 12 미만인 경우 ” OK “
- 포인트 열의 값이 15 미만인 경우 ” 좋음 “
- 이전 조건 중 어느 것도 참이 아닌 경우 “ 좋음 ”
참고 : NumPywhere() 함수에 대한 전체 문서는 여기에서 찾을 수 있습니다.
추가 리소스
다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
Pandas의 조건을 기반으로 새 열을 만드는 방법
여러 조건으로 NumPy Where() 함수를 사용하는 방법