[Python] pandas로 엑셀(excel) 데이터 읽기

    파이썬을 하는 사람들이라면 필수적인 라이브러리인 판다스(Pandas)는 다양한 데이터의 핸들링이 가능한데 자바 개발자라면 기겁을 할만큼(대다수 파이썬 라이브러리들이 대개 그렇지만) 사용방법이 매우 쉽다. 

     

    각자 엑셀 데이터가 있겠지만, 혹시나 원활한 실습을 원하는 분들도 있을테니 그런 분들은 아래의 엑셀 파일을 다운로드 하면 된다.

     

    키움증권과 카카오뱅크 FAQ

    faq.xlsx
    0.01MB

     

    위 파일은 아래와 같이 2개의 시트(Sheet)로 구성되어 있고, 첫번째 시트는 4개의 키움증권 FAQ 데이터, 두번째 시트는 2개의 카카오뱅크 FAQ 데이터이다.

     

    데이터구조

    키움증권 faq sheet
    카카오뱅크 faq sheet

     

    엑셀 읽기 코드

    import pandas as pd
    
    excel_data = pd.read_excel('c:/project/faq.xlsx')
    
    # print를 하면, sheet 1번만 출력
    print(excel_data)

    read_excel 메소드 호출 후, 엑셀이 있는 절대경로를 호출하면 엑셀 읽기가 끝이다.  그러나 위 결과를 실행하면 아래와 같이 1번째 시트만 나오게 된다.

     

    1번째 시트만 나오는 현상

     

    현재 excel_data 값 형태를 출력하면 역시 아래처럼 4행, 2열로만 나오게 된다.

    excel_data.shape
    (4, 2)

    즉, 첫번째 시트만 출력이 된 것이다. 사실, 이 원인은 인자중에 sheet_name을 설정하지 않으면, default로 0번째 즉 첫번째 시트를 가져오게 된다.

     

    원하는 시트값 가져오기

    excel_data = pd.read_excel('c:/project/faq.xlsx', sheet_name='카카오')

    위의 예제처럼 sheet_name 인자값을 하나 추가한 후 원하는 시트의 명칭을 입력한다.

     

                                                    질문                                                 답변
    0  체크카드 신청할 때 '부재 시 대리수령'에 동의했어요. 수령인 기준은 어떻게 되나요?  체크카드 신청 시 선택한 배송지에 따라 대리수령인 기준이 상이합니다.\n\n· 자택...
    1                             카드 사용등록 방법은 어떻게 되나요?  본인이 직접 카드를 수령하신 경우, 수령 후 1시간 내에 자동으로 사용등록 됩니다....
    

     

     

    참고자료

    https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_excel.html

    댓글

    Designed by JB FACTORY