데이터프레임은 concat() 함수를 이용하여 두 개의 데이터프레임을 위/아래 또는 좌/우로 합칠 수 있는데요,
코드를 보면서 살펴보도록 하겠습니다.
1. 위 아래로 데이터프레임 합치기
먼저 아래와 같은 두 개의 데이터프레임(df1, df2)이 있다고 가정해보겠습니다.
	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
출력 결과, 두 데이터프레임이 잘 합쳐졌음을 볼 수 있는데요, 인덱스 부분을 살펴보면 0,1,2,0,1,2로 인덱스가 정리가 안 된 것을 볼 수 있는데요, 이 부분에 대해서는 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
그 결과, 인덱스가 잘 정리되었음을 살펴볼 수 있습니다.
2. 좌우로 데이터프레임 합치기
concat() 함수의 기본 값은 위 아래(행방향)로 데이터프레임을 합치는 것인데요, 만약 좌우로 데이터프레임을 합치고 싶다면 다음과 같이 코드를 입력하면 됩니다.
pd.concat([df1,df2],axis=1) 
	temp	item	count	price	rating	index	temp	item	count	price	rating
0	hot	coffee	1	3000	4.5	3	hot	milk	4	2000	2.5
1	ice	juice	5	4000	3.0	4	hot	tea	3	4000	3.0
2	ice	ade	2	5000	4.0	5	ice	water	2	1000	4.5
axis을 axis = 1로 설정하니, 위와 같이 인덱스 포함 모든 열이 좌우로 합쳐졌음을 볼 수 있습니다.
'BLOG > 데이터분석' 카테고리의 다른 글
| [데이터분석] 데이터프레임 : 결측치 있는지 확인하기 & 칼럼별 개수 세기 - isnull(), isnull().sum() (0) | 2021.03.11 | 
|---|---|
| [데이터분석] 데이터프레임 concat() 으로 병합 시, 인덱스 재배열 하는 방법 (0) | 2021.03.11 | 
| [데이터분석] 데이터 프레임 : 행과 열 바꾸기 - transpose() (0) | 2021.03.11 | 
| [데이터분석] matplotlib : 그래프 눈금에 이름 / 단위 나타내는 법 (0) | 2021.03.11 | 
| [데이터분석] matplotlib : 그래프 눈금 간격 지정 방법 (0) | 2021.03.11 | 
