Pandas 연결 병합 함수 merge() 상세 정보
1.merge 함수 용도
pandas의merge() 함수는 SQL에서join의 사용법과 유사합니다. 서로 다른 데이터 집합을 일부 필드(속성)에 따라 통합하여 새로운 데이터 집합을 얻을 수 있습니다.
2. merge() 함수의 구체적인 매개 변수
사용법:
DataFrame1.merge(DataFrame2, how=‘inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', ‘_y'))
매개변수 설명매개 변수
설명
how
기본값은 inner입니다. inner/outer/left/right로 설정할 수 있습니다.
on
필드 연결에 따라 두 DateFrame에 있어야 합니다(동시에 존재하지 않으면 각각 left_on과 right_on을 사용하여 설정해야 함).
left_on
왼쪽 연결, DataFrame1에서 연결 키로 사용되는 열
right_on
오른쪽 연결, DataFrame2에서 연결 키로 사용되는 열
left_index
DataFrame1 로프를 연결 키로 참조
right_index
DataFrame2 로프를 연결 키로 참조
sort
연결 키에 따라 병합된 데이터를 정렬합니다. 기본값은 True
suffixes
두 데이터 세트에 대한 중복 열, 새 데이터 세트에 접미사 추가_x,_구별
3. merge용법 예시
두 개의 데이터 상자 만들기
# dict
dataDf1=pd.DataFrame({'lkey':['foo','bar','baz','foo'],
'value':[1,2,3,4]})
dataDf2=pd.DataFrame({'rkey':['foo','bar','qux','bar'],
'value':[5,6,7,8]})
print(dataDf1)
print(dataDf2)
>>>
lkey value
0 foo 1
1 bar 2
2 baz 3
3 foo 4
rkey value
0 foo 5
1 bar 6
2 qux 7
3 bar 8
내부 연결(Inner)
#inner
dataLfDf=dataDf1.merge(dataDf2, left_on='lkey',right_on='rkey')
>>>
lkey value_x rkey value_y
0 foo 1 foo 5
1 foo 4 foo 5
2 bar 2 bar 6
3 bar 2 bar 8
오른쪽 링크(Right)
#Right
dataDf1.merge(dataDf2, left_on='lkey', right_on='rkey',how='right')
>>>
lkey value_x rkey value_y
0 foo 1.0 foo 5
1 foo 4.0 foo 5
2 bar 2.0 bar 6
3 bar 2.0 bar 8
4 NaN NaN qux 7
전체 링크(Outer)
#Outer
dataDf1.merge(dataDf2, left_on='lkey', right_on='rkey', how='outer')
>>>
lkey value_x rkey value_y
0 foo 1.0 foo 5.0
1 foo 4.0 foo 5.0
2 bar 2.0 bar 6.0
3 bar 2.0 bar 8.0
4 baz 3.0 NaN NaN
5 NaN NaN qux 7.0
이상의 개인적인 경험으로 여러분께 참고가 되었으면 좋겠습니다. 또한 많은 응원 부탁드립니다.만약 잘못이 있거나 완전한 부분을 고려하지 않으신다면 아낌없이 가르침을 주시기 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Pandas의 DataFrame 스왑 열 순서 방법 구현1. DataFrame 열 레이블 가져오기 ['ps_state-stopped', 'ps_state-running', 'ps_state-blocked', 'ps_state-paging', 'ps_state-sleepi...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.