티스토리 뷰

Python과 pandas를 이용해 데이터를 다룰 때 용량(분량) 문제로 여러 개의 파일로 나누어진 파일에서 데이터를 불러와 합쳐야 하는 경우가 있습니다.

그럴 때 사용할 수 있는 pandas concat을 이용해 데이터프레임을 합치는 방법입니다.

# pandas 패키지 불러오기
import pandas as pd

# 연도별 데이터 불러와 각각 dataframe 만들기
temp_2015 = pd.read_csv("./data/2015.csv", sep=',', index_col=False, dtype='unicode')
temp_2016 = pd.read_csv("./data/2016.csv", sep=',', index_col=False, dtype='unicode')
temp_2017 = pd.read_csv("./data/2017.csv", sep=',', index_col=False, dtype='unicode')
temp_2018 = pd.read_csv("./data/2018.csv", sep=',', index_col=False, dtype='unicode')
temp_2019 = pd.read_csv("./data/2019.csv", sep=',', index_col=False, dtype='unicode')

# 여러 dataframe 연결해 하나의 dataframe으로 만들기
df = pd.concat([temp_2015, temp_2016, temp_2017, 
                temp_2018, temp_2019], ignore_index=True)

첫 번째 줄에서 제일 먼저 pandas 패키지를 pd라는 별칭으로 불러왔습니다.
그다음 5개의 파일로 나누어져 있는 데이터를 각각 5개의 데이터프레임으로 불러왔습니다.

read_csv는 기본적으로 파일 경로와 파일명만 지정해도 잘 불러오는데, 간혹 구분자 문제나 dtype 오류가 나는 경우가 있어서, sep, dtype을 지정해 주었습니다. index는 따로 지정하지 않고 일단 파일을 불러왔습니다.

마지막 구문인 concat이 여러 데이터프레임을 연결하는 구분입니다.
기본적으로 위아래로 나열된 데이터프레임을 연결하게 되며, 연결된 값으로 새로운 데이터프레임(df)을 만들었습니다.

데이터를 파일에서 읽고, 데이터프레임을 합쳐서 사용하는 등의 처리를 할 때에는 각 데이터프레임의 개수들의 합을 계산해보고 잘 처리되었는지 꼭 확인해보시기 바랍니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함