본문 바로가기
파이썬(Python)

판다스(Pandas)로 엑셀 파일 불어오기 - 두가지 방법

by 즐거운코딩 2024. 6. 30.
반응형

파이썬에서 데이터를 다루기 위해 데이터를 불러오는 다양한 방법이 있습니다.

이번 포스트에서는 가장 업무상 많이 사용하는 엑셀파일을 데이터프레임으로 불러오는 방법중에서 제가 가장 많이 사용하고 있는 두가지 방법을 소개하고자 합니다.

 

1.  기본적인 라이브러리 불러오기

import pandas as pd
import numpy as np
from datetime import datetime
from openpyxl import load_workbook
from dateutil.parser import parse
  • pandas 와 numpy 는 데이터 작업을 위한 기본 라이브러리
  • datetime, openpyxl, parser 는 데이터 특성에 따라 사용하는 라이브러리

2.  1개 시트 엑셀파일 불러오기 (기본 형식)

판다스로 엑셀을 불러오기

df_raw = pd.read_excel("d:/Data/Stat_List.xlsx", header=0,names=['구분', '회사명', '제품명', '제품코드', '가격'])
print(df_raw.shape)
df_raw.head()
df_raw.info()
  • 파일명은 경로 포함하여 " " 내 작성
  • 데이터 형식에 맞춰 옵션사항 추가 
    header = 0 : 첫번째 항을 필드명으로 선택
    names = [ ] : 불러오는 데이터 필드명이 영문(데이터베이스에서 받은 자료)으로 되어 있으면 분석 편이성을 위해
                           필드 순서 대로 필드명을 바꿔줌 
                           👉 불러오는 행의 개수와 names에 지정한 필드명 개수가 일치해야 함
    dtype={1:str, 2:int, 3:str } : 불러오는 데이터의 데이터타입을 처음부터 지정 가능, 숫자인데 코드값이면
                           문자로 관리하기 위해 해당 행 번호에 타입을 지정
    parse_dates=['필드명1', '필드명2' ] : 데이터중 날짜 형식의 데이터는 날짜데이터 가공을 위해 불러올때 date 타입을 지정 
  • shape : 불러온 데이터의 수량을 확인하기 위해 사용, 전체 필드수와 열 개수 확인 
  • head() : 불러온 데이터의 앞의 5개를 확인, 괄호안에 숫자를 넣으면 해당 숫자 만큼 데이터를 보여줌
                   head(10) 이면 앞에서 10개 데이터 확인
  • tail() : head 대신 tail 사용시 뒤에서 5개 데이터 확인
  • info() : 전체 데이터의 데이터 필드별 데이터 개수 및 데이터 타입 확인 
                 필드별 데이터 개수 비교시 특정필드 데이터 누락 여부 등을 확인 가능 함

3.  여러개 시트 보유 엑셀파일 불러오기

df1 = pd.read_excel("파일명", sheet_name="시트이름", usecols=[2, 3], skiprows= 2, na_values= '-')
df1.head()
  • sheet_name=" " : 엑셀 파일내 시트 이름을 적으면 해당 시트데이터를 불러 옴
  • usecols=[ ] : 전체 데이터중 특정 열만 불러오고 싶을 때 해당 열 번호 또는 열이름을 넣어주면 됨 (열번호는 0 부터 시작)
  • skiprows= n : 데이터 불러올때 표 제목, 날짜 등 상단에 다른 데이터가 입력되어 있을 때 실제 데이터부분만
                              건너뛰어 불러오기 할 때 이용
  • na_valuse = '변경할 값' : 엑셀 데이터중 null, #N/A, NaN 등 결측값을 지정한 값으로 일괄 변경

 

반응형