본문 바로가기
Python/Pandas

pandas.sample로 데이터 샘플링하기

by PySun 2025. 5. 21.
반응형

Pandas의 sample() 함수: 데이터 샘플링의 힘을 활용하기

데이터 과학의 세계에서 Pandas 라이브러리는 데이터를 다루는 데 있어 없어서는 안 될 툴입니다. 그 중 sample() 함수는 데이터셋에서 무작위 샘플을 추출하는 데 유용하게 사용됩니다. 이 포스팅에서는 sample() 함수를 어떻게 활용하여 귀중한 인사이트를 얻을 수 있는지 알아보겠습니다.

sample() 함수 소개

sample() 함수는 데이터프레임의 임의의 행을 선택하여 데이터의 다양한 면을 탐색하는 데 도움을 줍니다. 무작위 샘플링을 통해 데이터의 대표성을 확보하고, 나아가 모델의 일반화 능력을 향상시키는 효과를 기대할 수 있습니다.

함수 시그니처

DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)

매개변수:

  • n: 반환할 행의 수를 지정합니다.
  • frac: 반환할 샘플 비율을 지정합니다.
  • replace: True로 설정 시 샘플링 시 중복을 허용합니다.
  • weights: 특정 행에 대한 샘플링 확률을 지정합니다.
  • random_state: 랜덤 숫자 생성기의 시드값을 설정하여 결과의 재현성을 보장합니다.
  • axis: 샘플링 할 축을 결정합니다.

반환 값:

  • 무작위로 선택된 데이터프레임의 샘플을 반환합니다.

사용 예제

기본 예제

아래는 sample() 함수를 사용하여 데이터프레임에서 3개의 임의의 샘플을 추출하는 기본적인 예제입니다.

import pandas as pd

# 예제 데이터프레임 생성
data = {
    '이름': ['A', 'B', 'C', 'D', 'E'],
    '나이': [23, 45, 37, 29, 61],
    '도시': ['서울', '부산', '대구', '여수', '광주']
}
df = pd.DataFrame(data)

# 데이터프레임에서 무작위 샘플 3개 추출
sample_df = df.sample(n=3)

print(sample_df)
# 출력 예시:
#   이름  나이   도시
# 3  D  29  여수
# 1  B  45  부산
# 0  A  23  서울

비율 기반 샘플링 예제

이번에는 전체 데이터의 40%를 샘플링하는 예제를 살펴보겠습니다. 이렇게 비율 기반의 샘플링은 데이터 양이 클 때 유용합니다.

import pandas as pd

# 예제 데이터프레임 생성
data = {
    '이름': ['A', 'B', 'C', 'D', 'E'],
    '나이': [23, 45, 37, 29, 61],
    '도시': ['서울', '부산', '대구', '여수', '광주']
}
df = pd.DataFrame(data)

# 데이터프레임에서 전체의 40% 무작위 샘플 추출
sample_df = df.sample(frac=0.4)

print(sample_df)
# 출력 예시:
#   이름  나이   도시
# 1  B  45  부산
# 4  E  61  광주

결론

sample() 함수는 데이터 분석에서 무작위 샘플링을 통해 데이터를 보다 효과적으로 이해하고, 다양한 분석 가능한 인사이트를 제공하는 데 매우 유용합니다. 데이터 양이 많거나 복잡할수록 이 함수의 힘을 빌려 꼼꼼하게 검토해보세요.

  • 무작위 샘플링으로 데이터의 대표성을 확보하세요!
  • 지금 바로 pandas.sample() 함수를 활용하여 다양한 샘플을 추출해보세요!
반응형