본문 바로가기
Python

Pandas Data concat / merge / join

by ram_ 2022. 11. 9.

pandas에서 데이터 프레임을 병합하는 방법

  • pd.concat()
  • pd.merge()
  • pd.join()

 

# 딕셔너리 안에 데이터 형태 만들기
left = pd.DataFrame({
    "key" : ["K0", "K4", "K2", "K3"],
    "A" :["A0", "A1", "A2", "A3"],
    "B" : ["B0", "B1", "B2", "B3"]
})
left

 

 

# 리스트 안에 딕셔너리 형태로 데이터 만들기
right = pd.DataFrame([
    {"key":"K0", "C":"C0", "D": "D0"},
    {"key":"K1", "C":"C1", "D": "D1"},
    {"key":"K2", "C":"C2", "D": "D2"},
    {"key":"K3", "C":"C3", "D": "D3"}
])
right

 

 

pd.merge()

  • 두 데이터 프레임에서 컬럼이나 인덱스를 기준으로 잡고 병합하는 방법
  • 기준이 되는 컬럼이나 인덱스를 키값이라고 합니다
  • 기준이 되는 키값은 두 데이터 프레임에 모두 포함되어있어야 합니다

# on = "key"는 양쪽 데이터 프레임에서 key컬럼을 기준으로 잡고, 공통된 부분만 병합 됨.
pd.merge(left, right, on="key")

 

# how = "left"는 on="key"도 띠르면서, 왼쪽에 있는 데이터를 기준으로 데이터를 합쳐라. 
pd.merge(left, right, how="left", on="key")

 

# how 기본값 =  "inner" 교집합. 공통된 데이터만 뽑아라.
pd.merge(left, right, how="inner", on="key")

 

# how="inner"의 반대. "outer" 합집합. 모든 데이터를 뽑아라.
pd.merge(left, right, how="outer", on="key")

 

년도별 데이터 칼럼 삭제

= del

= drop()

 

인덱스 변경

  • set_index()
  • 선택한 컬럼을 데이터 프레임의 인덱스로 지정

상관계수

  • corr()
  • correlation의 약자입니다
  • 상관계수가 0.2 이상인 데이터를 비교

'Python' 카테고리의 다른 글

Matplotlib_데이터 경향/ 오차/ 저장  (0) 2022.11.09
Matplotlib 기초 _dataFrame  (0) 2022.11.09
Pandas Basic  (0) 2022.11.08
[Jupiter notebook] read_csv  (0) 2022.11.07
[Python] Colab 주요 기능, 한글 폰트  (0) 2022.11.07