Pandas DataFrame 보간 (Interpolate) 메서드

Beginner

소개

이 랩에서는 Python 의 Pandas 라이브러리에 있는 interpolate() 메서드를 살펴보겠습니다. interpolate() 메서드는 다양한 보간 기법을 사용하여 DataFrame 에서 누락된 값 또는 NaN (Not a Number) 값을 채우는 데 사용됩니다. 보간법 (Interpolation) 은 기존 데이터 포인트를 기반으로 누락된 값을 추정하는 프로세스입니다.

VM 팁

VM 시작이 완료되면 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 액세스하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한 사항으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.

학습 중에 문제가 발생하면 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 즉시 해결해 드리겠습니다.

필요한 라이브러리 가져오기

pandas 라이브러리와 numpy 라이브러리를 가져오는 것으로 시작해 보겠습니다.

import pandas as pd
import numpy as np

결측값이 있는 DataFrame 생성

다음으로, 몇 가지 누락된 값이 있는 DataFrame 을 생성해 보겠습니다.

df = pd.DataFrame([(0.0, np.nan, -1.0, 1.0), (np.nan, 2.0, np.nan, np.nan), (2.0, 3.0, np.nan, 9.0)], columns=list('abcd'))
print(df)

출력:

     a    b    c    d
0  0.0  NaN -1.0  1.0
1  NaN  2.0  NaN  NaN
2  2.0  3.0  NaN  9.0

선형 보간법을 사용하여 결측값 보간

선형 (linear) 방법을 사용하여 누락된 값을 보간할 수 있습니다. 선형 방법은 DataFrame 의 값이 동일한 간격으로 떨어져 있다고 가정합니다.

interpolated_df = df.interpolate(method='linear')
print(interpolated_df)

출력:

     a    b    c    d
0  0.0  NaN -1.0  1.0
1  1.0  2.0 -1.0  5.0
2  2.0  3.0 -1.0  9.0

다항식 보간법을 사용하여 결측값 보간

다항식 (polynomial) 방법을 사용하여 누락된 값을 보간할 수도 있습니다. 다항식 방법은 스플라인 (spline) 또는 다항식의 차수를 지정해야 합니다.

interpolated_column = df['a'].interpolate(method='polynomial', order=1)
print(interpolated_column)

출력:

0    0.0
1    1.0
2    2.0
Name: a, dtype: float64

pad 메서드를 사용하여 결측값 보간

누락된 값을 보간하는 또 다른 방법은 pad 방법입니다. pad 방법은 NaN 값을 DataFrame 의 기존 값으로 채웁니다.

interpolated_df = df.interpolate(method='pad')
print(interpolated_df)

출력:

     a    b    c    d
0  0.0  NaN -1.0  1.0
1  0.0  2.0 -1.0  1.0
2  2.0  3.0 -1.0  9.0

요약

이 랩에서는 Pandas 의 interpolate() 메서드를 사용하여 DataFrame 에서 누락된 값 또는 NaN 값을 채우는 방법을 배웠습니다. 선형 (linear), 다항식 (polynomial), pad 와 같은 다양한 보간 방법을 살펴보았습니다. 보간은 누락된 값을 추정하고 분석을 위해 데이터를 더 완전하게 만드는 데 유용한 기술입니다.