반응형
간혹 엑셀 파일들을 합쳐야 하는 경우가 있다.
뭐 하나하나 열어서 컨트롤 C 컨트롤 V 반복하면 되는 경우도 있지만
엑셀 파일이 많아지다보면
귀찮다.
처음 파이썬을 접하게 된 것도 귀찮은 반복 작업을 쉽게 해보려 했다.
물론 파이썬 깔고 뭐하고 시간은 더 걸렸다.
특정 폴더 안에 있는 모든 엑셀 파일 한 번에 합치는 방법
아래의 코드를 실행하면
D:/test/ 폴더에 있는
모든 엑셀파일을 (확장자가 xlsx로 끝나는 파일들) 합쳐준다.
물론 단순 합치기 기능만 있기 때문에 작업 후 엑셀에서 다듬어 주거나
파이썬 코드를 손보면 다양하게 사용 가능하다.
import pandas as pd
import glob
try:
path = 'D:/test/'
files = glob.glob(path + "*.xlsx")
excel = pd.DataFrame()
for file_name in files:
df = pd.read_excel(file_name)
excel = excel.append(df, ignore_index=True)
print(excel)
excel.to_excel(path+'test.xlsx')
except Exception as ex:
print('error' + str(ex))
만약 엑셀 파일이 아니라 CSV 파일들을 작업 중이라면
pd.read_excel() 대신 pd.read_csv()로 바꿔주면 된다.
혹시 에러 메시지로
"Your version of xlrd is 2.0.1. In xlrd >= 2.0, only the xls format is supported."
이런 게 뜬다면
pip install openpyxl
혹은
"Missing optional dependency 'xlrd'. Install xlrd >= 1.0.0 for Excel support Use pip or conda to install xlrd."
이런게 뜬다면
pip install xlrd
를 실행해서 패키지를 깔아주면 해결 가능하다.
반응형
'컴퓨터 > Python' 카테고리의 다른 글
파이썬으로 폴더에 있는 모든 엑셀파일 특정 행열 한 번에 합치는 방법 (2) | 2021.09.07 |
---|---|
파이썬으로 주식 현재가 알려주는 슬랙 (slack) 채팅 봇 만들기 (0) | 2021.08.20 |
파이썬으로 히스토그램 그리기 (0) | 2021.06.28 |
파이썬으로 박스플롯 (box plot - 상자그림) 그리기 (0) | 2021.06.27 |
파이썬 (Python) 리스트에서 리스트 더하기 빼기 (0) | 2021.06.25 |
댓글