본문 바로가기

제로베이스/Python

Python 7. Merge, Concat

파이썬 기초 익히기7

df1 = df.iloc[:4,:]
df2 = df.iloc[4:,:]

display(df1)
display(df2)

 

Q91. df1과 df2 데이터를 하나의 데이터 프레임으로 합쳐라

total = pd.concat([df1,df2],axis=0)
Ans = total
Ans

df3 = df.iloc[:2,:4]
df4 = df.iloc[5:,3:]

display(df3)
display(df4)

 

Q92. df3과 df4 데이터를 하나의 데이터 프레임으로 합쳐라. 둘다 포함하고 있는 년도에 대해서만 고려한다

#1
Ans = pd.concat([df3,df4],join = 'inner') ## 디폴트는 행기준 병합
Ans

#2
## reset_index를 통해 index를 새로 부여할 수 있음
Ans = pd.concat([df3,df4],join='inner').reset_index(drop=True)

 

#1 #2


Q93. df3과 df4 데이터를 하나의 데이터 프레임으로 합쳐라. 모든 컬럼이 출력될 수 있도록 고려하라

Ans = pd.concat([df3,df4],join = 'outer').fillna(0)
Ans


df.set_index('Location', inplace = True)
df5 = df.T.iloc[:7,:3]  ## T는 행과 열을 뒤바꿈 
df6 = df.T.iloc[6:,2:5]

display(df5)
display(df6)

 

Q94. df5과 df6 데이터를 하나의 데이터 프레임으로 merge함수를 이용하여 합쳐라. Algeria컬럼을 key로 하고 두 데이터 모두 포함하는 데이터만 출력하라

## concat은 단순 병합일 때 많이 사용; 행,열을 위아래, 좌우로 합칠 때
## merge는 SQL의 join과 같은 개념
Ans = pd.merge(df5,df6,on = 'Algeria',how = 'inner')
Ans

 

Q95. df5과 df6 데이터를 하나의 데이터 프레임으로 merge함수를 이용하여 합쳐라. Algeria컬럼을 key로 하고 합집합으로 합쳐라

## 합집합 = full outer join
Ans = pd.merge(df5,df6,on = 'Algeria', how ='outer').fillna(0)
Ans

 

 

 

 

'제로베이스 > Python' 카테고리의 다른 글

Python 9. Series & DataFrame  (0) 2024.07.01
Python 8. Statistics  (0) 2024.06.29
Python 6. Pivot  (0) 2024.06.29
Python 5. Time_Series  (0) 2024.06.29
Python 4.Apply, Map  (0) 2024.06.28