본문 바로가기
Data Science/Pandas, Numpy

[ Pandas] 데이터프레임 align 알아보기

by Queen2 2022. 10. 1.
728x90
반응형

 

Kaggle 노트북을 보다가 align 을 발견해서 가지고 와봤습니다

 

DataFrame.align(other, join='outer', axis=None, level=None, copy=True, fill_value=None,

                                                   method=None, limit=None, fill_axis=0, broadcast_axis=None)[source]

 

 

이 기능은 행/열에 명시된 join 방법을 통해 2개의 다른 데이터프레임의 align을 맞추는 기능인데요

Kaggle에서는 주로 train 데이터와 test 데이터간에 피처들이 서로 다르지 않도록 맞춰주는데에 사용되더라구요

 

 

반환 값은 aligh에 사용한 각 데이터프레임 혹은 시리즈로 반환되기 때문에

변수 2개를 unpacking 하는 방식으로 사용됩니다

 

train, test = train.align(test, join = 'inner', axis = 1)

 

 

Pandas 홈페이지 예시)

>>> df
   D  B  E  A
1  1  2  3  4
2  6  7  8  9

>>> other
    A    B    C    D
2   10   20   30   40
3   60   70   80   90
4  600  700  800  900


>>> left, right = df.align(other, join="outer", axis=1)
>>> left
   A  B   C  D  E
1  4  2 NaN  1  3
2  9  7 NaN  6  8

>>> right
    A    B    C    D   E
2   10   20   30   40 NaN
3   60   70   80   90 NaN
4  600  700  800  900 NaN

 

예시에서는 df와 other을 outer join 했기 때문에 각 데이터 프레임에 없는 열은 NaN 처리가 되면서 포함되었음을

볼 수 있습니다

 

 

 

Source:

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.align.html

728x90
반응형

댓글