데이터 분석 - 2

CYSSSSSSSSS·2023년 8월 14일
0

데이터분석

목록 보기
2/19

결합 방법

pd.concat()

  • 매핑 기준에 따라 : 인덱스 (행) , 컬럼이름(열) 을 기준으로 데이터 프레임을 붙이는 작업이다.
pd.concat([합칠 데이터 프레임들] , axis = 0/1 , join = 'inner')

방향 axis = 0

  • 세로 (행으로 합쳐라 )

  • 행 방향으로 붙이는 작업이다

  • 칼럼 이름이 똑같아야 한다.

  • inner , outer 옵션이 있다.

  • inner 옵션은 같은 행과 열만 합치고 , outer 옵션은 모든 행과 열 합치기

방향 axis = 1

  • 가로 로 합치기 (옆으로 붙여라 )

  • axis = 1 일때는 인덱스가 일치해야 한다.

  • outer 는 모든 행과 열을 합치기 (기본값)

  • inner 는 같은 행과 열만 합치기

pd.merge()

  • sql 의 join 과 마찬가지로 특정 칼럼의 key 값을 기준으로 결합

  • 데이터 베이스 join 과 똑같은 작업이다.

  • 지정된 값을 기준으로 병합

  • 옆으로 만 병함

  • 어떤 칼럼을 기준 삼을 것인가

  • inner : 같은 값만 , outer : 모두

  • left : 왼쪽 df 는 모두 , 오른쪽 df 는 같은 값만

  • right : 왼쪽 df 는 같은 값만 , 오른쪽 df 는 모두

pd.merge(df1, df2 , how = 'option' on = 'column 이름')
# option = 'inner' , 'outer' , 'left' , 'right'
  • on = 다음에는 병합을 할 기준을 담은 column 이름을 넣는다

pd.pivot()

  • 결합은 아니지만 , 집계 후 데이터프레임 구조를 변형해서 조회하는데 종종 사용 됩니다.

단계

  • groupby

  • pivot

  • 값으로 있는 열 값을 인덱스나 컬럼으로 사용하는 방법이다.

  • 반드시 집계를 해야 한다.

# 1) 매장1의 일별 카테고리별 판매량을 집계

temp = pd.merge(sales1, products)
temp2 = temp.groupby(['Date', 'Category'], as_index = False)['Qty'].sum()
temp2
profile
개발자 되고 싶어요

0개의 댓글