customers 테이블
orders 테이블

100명의 고객과 700개의 주문으로 이루어진 두 개의 테이블이 있다.

두개 테이블의 교집합을 나타내려면

select *
from customers
join orders
	on customers.id = orders.customer_id;

모든 고객 데이터를 가져오되, 주문정보가 없는 고객도 나타나도록 가져오는 방법은 left join을 쓰면된다.

select *
from customers c
left join orders o
	on c.id = o.customer_id;

 

데이터 합치기

데이터 분석을 하기 위해 여러 곳에서 데이터를 수집해 합쳐야 한다.

데이터 예시

pd.concat()함수는 데이터프레임을 말그대로 물리적으로 이어 붙여주는 함수다.

concat

pd.merge()함수는 두 데이터프레임을 각 데이터에 존재하는 고유값(key)을 기준으로 병합할때 사용한다.
pd.merge(df_left, df_right, how='inner', on=None)이 default이다.

'Employee ID' 를 연결고리로 합친다.

merge

pd.join() 함수를이용한 데이터프레임 합치기다. pd.join()은 인덱스를 기준으로 왼쪽으로 순차적으로 연결되는 방식이다. 어떤 인덱스를 기준으로 하느냐에 따라 배열이 달라진다.

join

 

+ Recent posts