일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Java
- matplotlib
- dataframe
- Tkinter
- PANDAS
- PostgreSQL
- django
- list
- Google Spreadsheet
- Kotlin
- hive
- string
- Google Excel
- SQL
- math
- google apps script
- array
- Excel
- numpy
- Github
- GIT
- gas
- PySpark
- 파이썬
- Python
- Redshift
- Apache
- Mac
- c#
- Today
- Total
달나라 노트
Python Pandas : dataframe_image를 사용하여 DataFrame을 image로 저장하기 (save pandas dataframe as an image using dataframe_image) 본문
Python Pandas : dataframe_image를 사용하여 DataFrame을 image로 저장하기 (save pandas dataframe as an image using dataframe_image)
CosmosProject 2021. 7. 30. 19:00
dataframe_image library를 이용하면 Pandas의 DataFrame을 image로 저장할 수 있습니다.
pip install dataframe-image
먼저 위처럼 dataframe-image library를 설치합시다.
설치시에는 underscore(_)가 아니라 dash(-)를 써야합니다.
import pandas as pd
import dataframe_image as dfi
dict_item = {
'item_id': [1, 1, 3, 4],
'item_name': ['a', 'a', 'c', 'd'],
'price': [1000, 2000, 3000, 4000],
'flag': ['n', 'y', 'y', 'n']
}
df_item = pd.DataFrame(dict_item)
dfi.export(df_item, 'test_image.png', max_cols=-1, max_rows=-1)
위 예시에서는 DataFrame을 생성하고 dataframe_image의 export method를 사용하여 DataFrame을 image로 저장하였습니다.
dfi.export(df_item, 'test_image.png', max_cols=-1, max_rows=-1)
export의 첫 번째 인자로는 image로 변환할 DataFrame을 전달합니다.
두 번째 인자로는 image file의 이름을 전달합니다. (test_image.png)
max_cols option은 DataFrame에서 image로 변환할 column 개수를 제한합니다.
max_cols=-1의 의미는 DataFrame의 모든 column을 image로 변환하겠다는 것입니다.
max_rows option은 DataFrame에서 image로 변환할 row 개수를 제한합니다.
max_rows=-1의 의미는 DataFrame의 모든 row를 image로 변환하겠다는 것입니다.
위처럼 max_cols, max_rows 값이 필요한 이유는 DataFrame을 이미지로 변환하는 것이니 만큼 결과 image 파일의 용량이 너무 커질 수 있기 때문입니다.
결과 이미지 파일을 보면 위와 같습니다.
index 번호까지 모두 나오죠.
import pandas as pd
import dataframe_image as dfi
dict_item = {
'item_id': [1, 1, 3, 4],
'item_name': ['a', 'a', 'c', 'd'],
'price': [1000, 2000, 3000, 4000],
'flag': ['n', 'y', 'y', 'n']
}
df_item = pd.DataFrame(dict_item)
df_item = df_item.set_index(keys=['item_id', 'item_name'], drop=True, inplace=False)
dfi.export(df_item, 'test_image.png', max_cols=-1, max_rows=-1)
위 예시처럼 set_index를 이용해 DataFrame의 index를 변경했습니다.
결과 image에는 index까지 모두 나오기 때문에 변경된 index도 모두 정상적으로 출력되는 것을 알 수 있습니다.
- 추가
이미지 파일의 저장 경로를 설정하려면 그냥 원하는 위치의 절대 경로 또는 상대 경로를 파일 이름 앞에 붙여주면 됩니다.
dfi.export(df_item, '~/documents/Code/test_image.png', max_cols=-1, max_rows=-1)
dfi.export(df_item, 'result/output_img/test_image.png', max_cols=-1, max_rows=-1)