엑셀의 여러 시트 한 번에 읽기
pandas로 엑셀을 읽을 때 default로는 첫번째 시트를 읽는다.
따라서 여러 시트를 한번에 읽고 싶을 때는 파라미터를 바꾸고 코드도 추가해야 한다.
예시 코드
df = pd.read_excel(path, sheet_name=None)
df = pd.concat([value.assign(sheet_source=key) for key,value in df.items()], ignore_index=True)
sheet_name 이라는 파라미터는 몇번째 시트를 읽을거냐 인데 따로 지정해주지 않으면 첫번째 시트를 읽기 때문에 전체를 읽어주기 위해선 None 으로 지정해줘야 한다.
그러나 이렇게 되면 데이터프레임 형태가 아닌 딕셔너리 형태가 되기 때문에 이를 concat 해줘야 하기 때문에 2번째 줄을 추가해주면 sheet_source 항목이 추가된 데이터 프레임을 볼 수 있다.
반응형