안녕하세요 jay입니다.
이번 시간은 Pandas dataframe 병합에 대해 알아보겠습니다.
이걸로 꽤 오래 고생했네요ㅠㅠ
그럼 시작해 보겠습니다.
1. 열을 기준으로 데이터 프레임 병합
(Merge dataframe based on column)
데이터프레임들끼리, 열을 기준으로 합쳐보겠습니다.
코드는 아래에 있습니다.
데이터프레임들끼리, 열을 기준으로 합쳐보겠습니다.
코드는 아래에 있습니다.
import pandas as pd raw_data = { 'id': ['1', '2', '3', '4', '5'], 'name': ['jay', 'jun', 'ggosae', 'minki', 'nari'], 'year': ['1993', '1994', '1994', '1993', '2000']} df_a = pd.DataFrame(raw_data, columns = ['id', 'name', 'year']) df_a raw_data = { 'id': ['4', '5', '6', '7', '8'], 'name': ['hani', 'bum', 'hong', 'ji', 'yoon'], 'year': ['2001', '1998', '1995', '1996', '1988']} df_b = pd.DataFrame(raw_data, columns = ['id', 'name', 'year']) df_b df_new = pd.concat([df_a, df_b]) # 열을 따라 2개의 Dataframe 병합 df_new
df_a 결과
df_b 결과
merge 결과
열을 기준으로 병합을 할 때, 반드시 columns 이름이 같아야
합칠 수 있습니다.
2. 행을 기준으로 데이터 프레임 병합
(Merge dataframe based on row)
데이터 프레임들을 행을 기준으로 합쳐보겠습니다.
데이터 프레임들을 행을 기준으로 합쳐보겠습니다.
import pandas as pd raw_data = { 'id': ['1', '2', '3', '4', '5'], 'name': ['jay', 'jun', 'ggosae', 'minki', 'nari'], 'year': ['1993', '1994', '1994', '1993', '2000']} df_a = pd.DataFrame(raw_data, columns = ['id', 'name', 'year']) df_a raw_data = { 'id': ['4', '5', '6', '7', '8'], 'name': ['hani', 'bum', 'hong', 'ji', 'yoon'], 'year': ['2001', '1998', '1995', '1996', '1988']} df_b = pd.DataFrame(raw_data, columns = ['id', 'name', 'year']) df_b df_new = pd.concat([df_a, df_b], axis=1) # 행을 따라 2개의 Dataframe 병합 df_new
df_new 결과
행을 기준으로 병합은 열과 달리 특별한 기준이 필요가 없다.
예를 들어 df_b의 행이 하나가 더 많더라도
아래와 같이 결과가 나온다.
댓글
댓글 쓰기