데이터 분석/판다스

[Pandas] DataFrame 합치기

eunnys 2023. 11. 13. 12:45

merge() 함수
- 두 데이터프레임에서 공통열(PK,FK)이 필요

 

df1 = pd.DataFrame({'번호':[10,20,30,40,50,60,70],
                    '이름':['홍길동','임꺽정','전우치','손오공','저팔계','사오정','삼장법사']})
df1

 

df2 = pd.DataFrame({'번호':[10,10,20,40,50,40,40,70,80],
                    '금액':[1000,2000,4500,2345,64332,6678,9345,3566,1000]})
df2


# '번호'라는 공통 키를 기준으로 두 개의 데이터프레임을 병합
# inner join : 양 쪽 데이터프레임에 공통으로 있는 데이터에 대해 병합 (교집합)
pd.merge(df1, df2)


# outer join : 합집합
pd.merge(df1, df2, how='outer')


# 왼쪽 데이터프레임에 있는 컬럼값 기준으로 병합
# left inner
pd.merge(df1, df2, how='left')


join on

 

df1 = pd.DataFrame({'번호':[10,20,30,40,50,60,70],
                    '이름':['홍길동','임꺽정','전우치','손오공','저팔계','사오정','삼장법사']})

df2 = pd.DataFrame({'고객번호':[10,10,20,40,50,40,40,70,80],
                    '금액':[1000,2000,4500,2345,64332,6678,9345,3566,1000]})
# 공통 키가 없는 경우
# 중복된 컬럼은 drop을 이용해 삭제해주면 된다
pd.merge(df1, df2, left_on='번호', right_on='고객번호')

 

'데이터 분석 > 판다스' 카테고리의 다른 글

[Pandas] 국가별 알콜 섭취량 데이터 분석  (0) 2023.11.13
[Pandas] 시애틀 강수량 데이터 분석  (0) 2023.11.13
[Pandas] 함수 매핑  (0) 2023.11.13
[Pandas] 시계열 데이터  (0) 2023.11.10
[Pandas] 개요  (0) 2023.11.09