

pd.concat([df1,df2])-> 행으로 두 df 더하기


pd.concat([df1,df2], axis=1)-> 열로 두 df 더하기

inner-join: 공통된 부분을 기반으로 합치기

outer-join: df1과 df2를 outer-join으로 합친다고 하면 두 df의 공통된 부분과 각 df가 가진 데이터가 합쳐져 하나의 df으로 표현됨
concat & outer-join 차이: concat은 교집합 부분을 중복해 두 가지 df를 합치지만, outer-join은 교집합을 중복하지 않고 두 df를 합침
(⬇️ 아래 첫 번째는 merge_outer-join으로 합친 결과, 두 번째는 concat을 사용해 합친 결과)

left-join: df1.merge(df2, how='left', on= ['key1','key2']) 이면 df1의 데이터 + 두 df의 교집합까지만 출력됨
⬇️ 아래 이미지는 df1, df2를 나타냄


outer-join(핑크색 동그라미는 left/outer join의 차이점)

right-join: df1.merge(df2, how='right', on= ['key1','key2']) 이면 df2의 데이터 + 두 df의 교집합까지만 출력됨


df**.**merge("붙일 내용", how **=** "(방법)", on **=**"(기준 feature)")
numerical data를 기준으로 조건을 설정해 특정 조건에 부합하는 데이터만 출력하기
ex) 순이익률이 양인 주식 종목들에 대해서만 보기
# 필터링 조건 (Condition) 설정
condition = (df['순이익률']> 0)
print( df[condition] )
isin: categorical data를 기준으로 conditioning하는 경우에 사용
ex) df[df['Genre'].isin(['Action'])] = df[(df['Genre'] **==** 'Action')]
DF라는 데이터 프레임에 역대 흥행한 영화들의 장르, 관객 수에 대한 데이터가 있다고 가정하면 아래와 같은 데이터 프레임을 만들 수 있다

→ DF에서 각 장르별로 평균 관객 수를 구하고 싶다면 장르를 기준으로 해 groupby를 시행하여 평균을 구할 수 있다