🗄️ 데이터센터
home
주식거래 데이터
home

홈택스세금계산서 파일 읽기

데이터 읽기

모든 코드스니펫과 설명에는 참고할 내용이 링크로 연결되어 있습니다. 링크를 클릭하여 자세한 내용을 확인해주세요. 특히 코드스니펫의 "#" 기호로 시작하는 주석에도 관련 링크가 있으니, 이해가 어려운 코드는 링크를 통해 학습하시기 바랍니다.

1. 코드 파일 생성

이제 준비된 데이터를 읽어보겠습니다. 로컬 PC에 "세금계산서"라는 폴더를 생성하고 준비된 데이터를 저장해주세요. 그리고 주피터노트북 파일을 생성합니다. 파이썬 및 편집기 설치에서 jupyter Notebook으로 실행 섹션을 참고 합니다.

2. 파일 하나 읽어보기

데이터는 최소 1개에서 최대 10개 정도 있을 수 있지만, 우선 하나만 읽어보도록 하겠습니다. 우리는 pandas라는 데이터 분석에 특화된 라이브러리를 사용할 것입니다. 현재 검증하려는 데이터는 표 형식의 엑셀인데, pandas를 통해 자유롭게 다룰 수 있습니다. pandas만 잘 다루게 되어도 대부분의 업무를 자동화 또는 반자동화할 수 있으니, 조금 어렵게 느껴지더라도 반복해서 학습해 주세요.
import pandas as pd # import 참고 pd.read_excel('세금계산서.xlsx') # read_excel 참고
Python
복사

1. import하기

먼저 pandas 라이브러리를 import합니다. “import pandas”만으로도 import가 가능하지만, 여기서는 as pd를 사용하여 pandas 라이브러리를 pd로 축약해서 사용하겠다는 의미입니다. pd 대신 사용자가 기억하기 쉬운 다른 명칭을 사용해도 됩니다.
import pandas as pd
Python
복사

2. read_excel

pd.read_excel은 pandas 라이브러리에 있는 함수를 사용한다는 의미입니다. pandas 라이브러리는 다양한 기능을 가진 코드들의 모음인데, 그중에서 엑셀 파일을 읽어오는 기능을 가진 read_excel 함수를 사용하는 것입니다. 쉽게 설명하자면, pd는 as pd로 인해 pandas를 줄여 쓴 것이므로, pandas.read_excel은 "pandas 라이브러리에서 read_excel이라는 함수를 사용할게!"라고 명령하는 것입니다.
pd.read_excel('세금계산서.xlsx')
Python
복사
read_excel 함수를 사용할 때는 파일명을 지정해야 합니다. 제 예시에서는 '세금계산서.xlsx'라는 파일을 읽으려고 합니다. 여러분은 본인이 가지고 있는 파일의 이름을 넣어서 읽어보시기 바랍니다.

홈택스 세금계산서 읽기

홈택스 세금계산서를 읽을 때는 읽기 옵션을 조금 다르게 설정해야 합니다. 홈택스에서 세금계산서 내역을 엑셀로 받으면 xls 파일 형태로 다운로드됩니다.
해당 파일을 열어보면 실제 세금계산서 내용이 6번째 줄부터 시작됩니다. pd.read_excel로 파일을 읽을 때는 이를 위한 옵션을 하나 추가해야 합니다.
import pandas as pd pd.read_excel('매출전자세금계산서목록(1~1000).xls', header=5)
Python
복사
header옵션으로 시작행의 위치를 잡아주는데, 파이썬에서는 첫 번째 행이 0번째 행으로 계산됩니다. 따라서 6번째 행을 지정하려면 header=5로 설정해야 합니다. 이것을 '0-based indexing'이라고 하며, 프로그래밍에서 일반적으로 사용되는 방식입니다.
0-based 인덱싱은 프로그래밍에서 숫자를 세는 방식으로, 첫 번째 요소를 0으로 시작하여 카운트합니다.
일반적인 카운팅: 1, 2, 3, 4, 5...
0-based 인덱싱: 0, 1, 2, 3, 4...
이러한 0-based 인덱싱은 다음과 같은 이유로 프로그래밍에서 널리 사용됩니다
메모리 주소 계산의 효율성
배열의 시작점부터의 오프셋 계산이 용이
대부분의 프로그래밍 언어에서 표준으로 채택
따라서 엑셀 파일에서 6번째 행을 지정하고 싶을 때는 5를 입력해야 하며, 이는 프로그래밍의 관례를 따르는 것입니다.