언빌리버블티
[Python] Pandas 데이터 프레임 병합 메서드 - pd.concat() 본문
Pandas 데이터 프레임 합치기 - 1
pd.concat()
데이터 프레임을 이어 붙이는 함수로 리스트 객체를 인자로 받는다.
- axis = 0 : 위 아래로 병합
- axis = 1 : 좌 우로 병합
- join = ‘inner”, 결측치를 제외하고 병합
pd.concat(df)
pandas.concat(objs, axis=0, join='outer', ignore_index=False, keys=None,
levels=None, names=None,verify_integrity=False, sort=False, copy=True)
pd.concat() 예시
a b c
0 a0 b0 c0
1 a1 b1 c1
2 a2 b2 c2
3 a3 b3 c3
a b c d
0 a2 b2 c2 d2
1 a3 b3 c3 d3
2 a4 b4 c4 d4
3 a5 b5 c5 d5
데이터 프레임 행방향 합치기 (axis = 0)
- 데이터를 위 아래로 합친다.
- default 값으로 axis 옵션은 0으로 들어간다.
- 행 인덱스와 열 인덱스가 서로 다른 두 데이터프레임을 병합하는 경우 본래 갖고 있던 인덱스를 그대로 사용하고 열 인덱스가 맞지 않는 부분은 NaN 값으로 채워진다.
pd.concat([df1, df2], axis=0)

- 행 인덱스가 기본적으로는 원래의 인덱스를 그대로 가져와 사용하기 때문에 재배열을 위해서는 ignore_index 옵션을 True로 지정해주어야 한다.
- NaN값은 fillna()를 통해 채울 수 있다.
pd.concat([df1, df2], axis=0, ignore_index=True).fillna(0)
데이터 프레임 열방향 합치기 (axis = 1)
- 데이터 프레임을 좌, 우로 이어 붙인다.
- 열방향으로 axis 를 지정해두고 , 서로 인덱스가 맞지 않는 부분에 대해서는 NaN 값을 채워 반환한다.
- 두 NaN 값을 제외하고 교집합 만을 출력하고 싶다면 join 옵션을 inner로 지정해주면 된다 !
- inner : 두 NaN 값을 제외한 데이터프레임 , 값이 겹치는 것만 출력
- outer : default join 옵션 , 값이 겹치지 않는다면 NaN으로 저장한다.
- 두 NaN 값을 제외하고 교집합 만을 출력하고 싶다면 join 옵션을 inner로 지정해주면 된다 !
- 열방향으로 axis 를 지정해두고 , 서로 인덱스가 맞지 않는 부분에 대해서는 NaN 값을 채워 반환한다.
pd.concat([df1, df2], axis=1, ignore_index=True)

pd.concat([df1, df2], axis=0, ignore_index=True, join = 'inner')
pd.concat([df1, df2], axis=0, ignore_index=True, join = 'outer')

Series 간의 병합
s1 = pd.Series(['JE', 'HY', 'JH'], name='s1')
s2 = pd.Series(['JY', 'JM', 'GH'], name='s2')
pd.concat([s1, s2], axis=0, ignore_index=True)
0 JE
1 HY
2 JH
3 JY
4 JM
5 GH
dtype: object
print(pd.concat([s1, s2], axis=1))
s1 s2
0 JE JY
1 HY JM
2 JH GH
'Language > Python' 카테고리의 다른 글
[Python] Pandas Dataframe 누적합과 누적곱 구하기 - pd.cumsum() / pd.cumprod() (0) | 2022.10.11 |
---|---|
[Python] Pandas 데이터 프레임 병합 메서드 - pd.merge() (0) | 2022.10.07 |
[Python] 수치형 변수의 구간화 - pd.cut() & pd.qcut() (0) | 2022.10.06 |
[Python] koreanize_matplotlib : matplotlib 한국어 폰트 자동 설정 패키지 (0) | 2022.10.05 |
[Python] Conda Google API 라이브러리 설치 (0) | 2022.10.05 |
Comments