데이터 분석을 진행하다 보면, 종종 데이터를 특정 기준에 따라 분류하거나 등급을 매기고 싶을 때가 있다. 예를 들어, 학생들의 시험 점수에 따라 성적 등급을 부여하고 싶을 때, 어떻게 해야 할까? Pandas와 NumPy의 강력한 기능을 활용하면 이러한 작업을 간단하게 수행할 수 있다.
먼저, 아래의 코드를 살펴보자.
number = [
df["국어"] >= 90,
(df["국어"] >= 80) & (df["국어"] < 90),
(df["국어"] >= 70) & (df["국어"] < 80)
]
line = ['A', 'B', 'C']
df['등급'] = np.select(number, line, default='F')
이 코드는 학생들의 '국어' 점수에 따라 '등급'을 부여하는 작업을 수행한다.
조건 설정:
number
리스트에는 세 가지 조건이 정의되어 있다. 첫 번째 조건은 국어 점수가 90점 이상인 경우, 두 번째 조건은 80점 이상 90점 미만인 경우, 그리고 세 번째 조건은 70점 이상 80점 미만인 경우를 나타낸다.등급 설정:
line
리스트에는 각 조건에 따라 부여될 등급이 정의되어 있다. 즉, 'A', 'B', 'C' 등급이다.np.select 함수: NumPy의
select
함수는 주어진 조건 리스트와 출력값 리스트를 바탕으로 데이터프레임에 새로운 값을 할당한다. 위 코드에서는number
리스트의 조건에 따라line
리스트의 등급을 '등급' 열에 할당한다. 만약 어떤 조건도 만족하지 않는다면default='F'
에 의해 'F' 등급이 할당된다.
이렇게 Pandas와 NumPy를 활용하면, 복잡한 조건에 따른 데이터 분류나 등급 부여 작업을 간결하고 효율적으로 수행할 수 있다. 특히, 대용량의 데이터를 처리할 때 이러한 방법은 매우 유용하다.
결론적으로, 데이터 분석에서 다양한 조건에 따른 분류나 등급 부여는 필수적인 작업 중 하나다. Pandas와 NumPy의 조합은 이러한 작업을 빠르고 정확하게 수행할 수 있게 도와준다. 데이터 분석을 진행하면서 이러한 기능을 활용해보면, 분석의 효율성과 정확도를 크게 향상시킬 수 있다.