여러 개의 데이터프레임은 concat() 함수로 위아래 또는 좌우로 병합할 수 있는데요, 이때 인덱스는 자동으로 재배열되어서 나오지 않는답니다. 따라서 어떻게 해야 인덱스를 재배열할 수 있는지 코드를 보면서 살펴보도록 하겠습니다.
먼저, 아래와 같은 두 데이터프레임이 있다고 가정해보겠습니다.
temp item count price rating
0 hot coffee 1 3000 4.5
1 ice juice 5 4000 3.0
2 ice ade 2 5000 4.0
index temp item count price rating
0 3 hot milk 4 2000 2.5
1 4 hot tea 3 4000 3.0
2 5 ice water 2 1000 4.5
이제 이 두 데이터프레임을 합치려고 하는데요, concat() 함수 안에 합칠 데이터프레임을 다음과 같이 입력하면 됩니다.
pd.concat([df1, df2])
temp item count price rating index
0 hot coffee 1 3000 4.5 NaN
1 ice juice 5 4000 3.0 NaN
2 ice ade 2 5000 4.0 NaN
0 hot milk 4 2000 2.5 3.0
1 hot tea 3 4000 3.0 4.0
2 ice water 2 1000 4.5 5.0
병합된 데이터프레임을 보면 인덱스가 정리가 안 되어 있는데요, 만약 순서대로 재배열을 하고 싶다면 concat() 함수 안에 'ignore_index=True' 라는 인자를 넣어야 한답니다.
다시 한번 해당 인자를 추가해 병합을 해보겠습니다.
pd.concat([df1,df2], ignore_index=True)
temp item count price rating index
0 hot coffee 1 3000 4.5 NaN
1 ice juice 5 4000 3.0 NaN
2 ice ade 2 5000 4.0 NaN
3 hot milk 4 2000 2.5 3.0
4 hot tea 3 4000 3.0 4.0
5 ice water 2 1000 4.5 5.0
인자를 추가해서 실행한 결과, 인덱스가 재배열되었음을 확인할 수 있습니다.
'BLOG > 데이터분석' 카테고리의 다른 글
[데이터분석] 데이터프레임 : 중복된 행 찾기 & 개수 - duplicated(), sum() (0) | 2021.03.11 |
---|---|
[데이터분석] 데이터프레임 : 결측치 있는지 확인하기 & 칼럼별 개수 세기 - isnull(), isnull().sum() (0) | 2021.03.11 |
[데이터분석] 데이터프레임 : 위/아래, 좌/우로 합치기 - concat() (0) | 2021.03.11 |
[데이터분석] 데이터 프레임 : 행과 열 바꾸기 - transpose() (0) | 2021.03.11 |
[데이터분석] matplotlib : 그래프 눈금에 이름 / 단위 나타내는 법 (0) | 2021.03.11 |