일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 빅데이터
- probability
- 빅 데이타
- 몽고디비
- openCV
- 딥러닝
- R
- 빅 데이터
- No SQL
- 빅데이타
- 데이터 과학
- 김양재
- Artificial Intelligence
- nodeJS
- WebGL
- data science
- 우리들교회
- Machine Learning
- c++
- Statistics
- 인공지능
- MongoDB
- Deep learning
- 주일설교
- 김양재 목사님
- Big Data
- 통계
- 김양재 목사
- node.js
- 확률
- Today
- Total
Scientific Computing & Data Science
[Programming / Python] Pandas 모듈을 이용하여 엑셀(Excel) 데이터 가져오기 및 Excel 파일로 데이터 저장하기 본문
[Programming / Python] Pandas 모듈을 이용하여 엑셀(Excel) 데이터 가져오기 및 Excel 파일로 데이터 저장하기
cinema4dr12 2017. 11. 24. 22:45이번 포스팅에서는 Python의 Data 데이터 분석 라이브러리(모듈)인 pandas를 이용하여 Microsoft Excel 파일의 데이터를 불러오는 방법에 대하여 알아보도록 하겠습니다.
샘플 코드는 다음과 같습니다:
1 2 3 4 5 6 7 8 9 10 | import pandas as pd inputExcelFile = {YOUR_EXCEL_FILE_PATH} if os.path.isfile(inputExcelFile): xl = pd.ExcelFile(inputExcelFile) else: print("[ERROR] Failed to load Excel File : %s" % (inputExcelFile)) # Load a sheet into a DataFrame by name: df df = xl.parse(''.join(xl.sheet_names)) | cs |
반대로 Data Frame을 Excel 파일로 저장하는 방법에 대해 알아보도록 하겠습니다.
우선 Excel 파일로 저장을 위해서는 Open Python Excel(openpyxl) 모듈 설치가 필요합니다:
설치를 위해 Command Line Tool에서 pip 명령을 사용하거나:
> pip install openpyxl
Anaconda가 설치되어 있는 경우,
> conda install openpyxl
와 같이 입력하여 모듈을 설치합니다.
아래 코드는 Data Frame을 Excel 파일로 저장하는 샘플 코드입니다:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | # import modules import pandas as pd import numpy as np # index_format(index) & columns_format(columns)정의 index_format = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] columns_format = ['x', 'y'] # DataFrame 초기화 values = pd.DataFrame(index=index_format, columns=columns_format) # x & y 값 정의 x = index_format y = np.sin(x) for ii in range(values.shape[0]): # fill in x values into column index zero of values values.iloc[ii,0] = x[ii] # fill in x values into column index one of values values.iloc[ii,1] = y[ii] # saves DataFrame(values) into an Excel file values.to_excel('./test.xlsx', sheet_name='Sheet1', columns=columns_format, header=True, index=index_format, index_label="y = sin(x)", startrow=1, startcol=0, engine=None, merge_cells=True, encoding=None, inf_rep='inf', verbose=True, freeze_panes=None) | cs |
Line 10에서 Data Frame values를 초기화하였는데 초기화 했을 때에는 다음과 같은 형태가 됩니다:
> values x y 1 NaN NaN 2 NaN NaN 3 NaN NaN 4 NaN NaN 5 NaN NaN 6 NaN NaN 7 NaN NaN 8 NaN NaN 9 NaN NaN 10 NaN NaN
Line 16~20에서 For Loop을 통해 값이 저장되면 values는 다음과 같이 변경됩니다:
> values x y 1 1 0.841471 2 2 0.909297 3 3 0.14112 4 4 -0.756802 5 5 -0.958924 6 6 -0.279415 7 7 0.656987 8 8 0.989358 9 9 0.412118 10 10 -0.544021
또 하나의 팁으로써 Line 18과 20에서, iloc은 DataFrame의 행(Row)과 열(Column)의 위치의 값을 불러오거나 저장할 때 유용합니다.
Line 23~36의 코드는 실질적으로 Excel 파일로 저장하는 코드로써 현재 Working Directory에 test.xlsx라는 이름으로 Excel 파일을 저장합니다. 각각에 대한 자세한 옵션은 해당 pandas 문서를 참고하시기 바랍니다.
이렇게 해서 저장된 Excel 파일 test.xlsx을 열면 다음과 같은 형태가 됩니다.
'Programming > Python' 카테고리의 다른 글
[Programming / Python] 지정경로 내 파일 리스트 가져오기 (0) | 2018.01.13 |
---|---|
[Programming / Python] openpyxl 모듈의 load_workbook을 활용하여 Excel 데이터 변경하기 (0) | 2017.11.26 |
[Programming / Python] 디렉터리(폴더) 생성 및 텍스트 파일 쓰기 (9) | 2017.11.24 |
[Programming / Python] 현재 시간 출력하기 (0) | 2017.11.24 |
[Programming / Python] Pandas 모듈을 이용하여 CSV 파일을 읽고 저장하기 (0) | 2017.11.13 |