파이썬, Pandas로 엑셀 파일 읽기, 쓰기
글. 수알치 오상문.
다음 코드는 파이썬에서 판다스를 이용한 엑셀 파일 읽기 쓰기 예제입니다.
(예제 엑셀 파일은 첨부했으니 다운로드 받아서 사용하세요.)
import pandas as pd
# csv 엑셀 파일 읽기
df = pd.read_csv("c:/temp/lotto.csv")
print(df)
print("="*45)
# csv 엑셀 파일 읽기
df = pd.read_csv("c:/temp/lotto.csv")
print(df)
print("="*45)
# xlsx 엑셀 파일 읽기
df = pd.read_excel("c:/temp/lotto.xlsx", engine = "openpyxl")
print(df)
print("="*45)
# xlsx 엑셀 파일 읽기 옵션 지정
# 시트명 지정("Sheet1"), 헤더 줄 지정(첫줄은 0)
df = pd.read_excel("c:/temp/lotto.xlsx", engine = "openpyxl",
sheet_name="lotto", header=0)
print(df)
print("="*45)
# 인덱스 컬럼 지정 (번호 또는 이름)
df = pd.read_excel("c:/temp/lotto.xlsx", engine = "openpyxl",
index_col=0)
print(df)
print("="*45)
# 특정 컬럼들만 가져오기 (인덱스 컬럼 번호는 가져온 컬럼에서 선택됨)
df = pd.read_excel("c:/temp/lotto.xlsx", engine = "openpyxl",
index_col=0, usecols="A,B,C,D")
print(df)
print("="*45)
# 컬럼 이름 변경하기
df = pd.read_excel("c:/temp/lotto.xlsx", engine = "openpyxl",
index_col=0, usecols="A,B,C,D",
names=['회차','번호1','번호2','번호3'])
print(df)
print("="*45)
# 데이터프레임 자료를 엑셀 파일로 저장하기
# (윈도우 기본 한글 코드 cp949 지정)
df.to_csv('c:/temp/test1.csv', encoding='cp949') # CSV 파일 저장
df.to_excel('c:/temp/test1.xlsx') # xlsx 파일 저장
[실행 결과]
no num1 num2 num3 num4 num5 num6
0 1 10 23 29 33 37 40
1 2 9 13 21 25 32 42
2 3 11 16 19 21 27 31
3 4 14 27 30 31 40 42
4 5 16 24 29 40 41 42
.. ... ... ... ... ... ... ...
890 891 9 13 28 31 39 41
891 892 4 9 17 18 26 42
892 893 1 15 17 23 25 41
893 894 19 32 37 40 41 43
894 895 16 26 31 38 39 41
[895 rows x 7 columns]
=============================================
no num1 num2 num3 num4 num5 num6
0 1 10 23 29 33 37 40
1 2 9 13 21 25 32 42
2 3 11 16 19 21 27 31
3 4 14 27 30 31 40 42
4 5 16 24 29 40 41 42
.. ... ... ... ... ... ... ...
890 891 9 13 28 31 39 41
891 892 4 9 17 18 26 42
892 893 1 15 17 23 25 41
893 894 19 32 37 40 41 43
894 895 16 26 31 38 39 41
[895 rows x 7 columns]
=============================================
no num1 num2 num3 num4 num5 num6
0 1 10 23 29 33 37 40
1 2 9 13 21 25 32 42
2 3 11 16 19 21 27 31
3 4 14 27 30 31 40 42
4 5 16 24 29 40 41 42
.. ... ... ... ... ... ... ...
890 891 9 13 28 31 39 41
891 892 4 9 17 18 26 42
892 893 1 15 17 23 25 41
893 894 19 32 37 40 41 43
894 895 16 26 31 38 39 41
[895 rows x 7 columns]
=============================================
no num1 num2 num3 num4 num5 num6
0 1 10 23 29 33 37 40
1 2 9 13 21 25 32 42
2 3 11 16 19 21 27 31
3 4 14 27 30 31 40 42
4 5 16 24 29 40 41 42
.. ... ... ... ... ... ... ...
890 891 9 13 28 31 39 41
891 892 4 9 17 18 26 42
892 893 1 15 17 23 25 41
893 894 19 32 37 40 41 43
894 895 16 26 31 38 39 41
[895 rows x 7 columns]
=============================================
num1 num2 num3 num4 num5 num6
no
1 10 23 29 33 37 40
2 9 13 21 25 32 42
3 11 16 19 21 27 31
4 14 27 30 31 40 42
5 16 24 29 40 41 42
.. ... ... ... ... ... ...
891 9 13 28 31 39 41
892 4 9 17 18 26 42
893 1 15 17 23 25 41
894 19 32 37 40 41 43
895 16 26 31 38 39 41
[895 rows x 6 columns]
=============================================
num1 num2 num3
no
1 10 23 29
2 9 13 21
3 11 16 19
4 14 27 30
5 16 24 29
.. ... ... ...
891 9 13 28
892 4 9 17
893 1 15 17
894 19 32 37
895 16 26 31
[895 rows x 3 columns]
=============================================
번호1 번호2 번호3
회차
1 10 23 29
2 9 13 21
3 11 16 19
4 14 27 30
5 16 24 29
.. ... ... ...
891 9 13 28
892 4 9 17
893 1 15 17
894 19 32 37
895 16 26 31
[895 rows x 3 columns]
=============================================
'Python 활용' 카테고리의 다른 글
엑셀 데이터 전처리 (Python / Pandas) (0) | 2021.05.07 |
---|---|
파이썬, 미디 파일 구조 분석용 코드 예제 (0) | 2021.04.24 |
파이썬, Pandas의 Series, DataFrame 자료 예제 (0) | 2021.04.24 |
파이썬, PyAudio 설치 에러 (0) | 2021.02.22 |
파이썬, 다른 프로그램의 키보드 입력 감지와 마우스 포인터 이동 제어 (0) | 2021.02.16 |