파이썬 기초문법

Pandas DataFrame에서 lambda 활용하기

Family in August 2023. 4. 17. 09:20
반응형

Pandas는 데이터 분석에 매우 유용한 라이브러리 중 하나입니다.
데이터프레임(DataFrame)은 Pandas에서 가장 중요한 데이터 구조 중 하나입니다.
이번 포스팅에서는 Pandas 데이터프레임에서 lambda 함수를 활용하여 데이터를 처리하는 방법에 대해 알아보겠습니다.

lambda 함수는 일반적으로 파이썬에서 사용되며, 작은 함수를 만들 때 특히 유용합니다.
lambda 함수를 이용하면 함수를 정의하지 않고 간단한 로직을 작성할 수 있습니다.
Pandas에서는 lambda 함수를 데이터프레임의 열(Column) 또는 행(Row)에 대해 적용할 수 있습니다.

먼저, 필요한 라이브러리를 불러옵니다.
이번 예제에서는 numpy와 pandas를 사용합니다.

import numpy as np
import pandas as pd


다음으로, 데이터프레임을 생성합니다.
이번 예제에서는 3개의 열(Column)을 가지는 데이터프레임을 생성합니다.

df = pd.DataFrame({
   'A': [1, 2, 3],
   'B': [4, 5, 6],
   'C': [7, 8, 9]
})


이제, lambda 함수를 사용하여 데이터를 처리할 수 있습니다.
예를 들어, 열(Column) A에서 값이 2보다 작은 데이터를 선택하려면 다음과 같이 작성합니다.

df = df[df['A'].apply(lambda x: x < 2)]


위 코드에서, apply() 메소드를 사용하여 lambda 함수를 열(Column) A에 적용합니다.
이 lambda 함수는 입력으로 받은 값이 2보다 작은 경우 True를 반환합니다.
따라서, apply() 메소드는 lambda 함수의 반환값에 따라 데이터프레임에서 True인 행(Row)만 남기게 됩니다.

이번에는 lambda 함수를 사용하여 새로운 열(Column)을 생성해보겠습니다.
예를 들어, 열(Column) A와 B의 값을 더한 값을 새로운 열(Column) D로 추가하려면 다음과 같이 작성합니다.

df['D'] = df.apply(lambda row: row['A'] + row['B'], axis=1)


위 코드에서, apply() 메소드를 사용하여 lambda 함수를 각 행(Row)에 적용합니다.
이 lambda 함수는 입력으로 받은 행(Row)의 열(Column) A와 B의 값을 더한 값을 반환합니다.
따라서, apply() 메소드는 각 행(Row)에 lambda 함수를 적용하고 반환된 값을 열(Column) D의 새로운 값으로 추가합니다.

이번 포스팅에서는 Pandas에서 lambda 함수를 활용하여 데이터프레임의 열(Column) 또는 행(Row)에 새로운 값을 생성하는 방법을 알아보았습니다.
이를 응용하여 데이터프레임의 행과 열의 값을 활용하여 자유롭게 새로운 값을 생성할 수 있습니다.

궁금하신 부분은 댓글로 남겨주세요.

반응형