pandasをよく使うのですが、記事内で出力結果等を貼り付けると、表示が崩れてしまうことがあります。
そんなときはtabulate
というライブラリを使うと便利です。
from tabulate import tabulate
import pandas as pd
from pprint import pprint
df = pd.read_csv('small_category.csv', encoding='utf-8-sig')
br = '\\n'
print(br + 'print'.center(20, '=') + br)
print(df.head())
print(br + 'pprint'.center(20, '=') + br)
pprint(df.head())
print(br + 'tabulate psql'.center(20, '=') + br)
print(tabulate(df.head(), headers='keys',
tablefmt='psql',
numalign='right',
stralign='left', showindex=False))
print(br + 'tabulate simple'.center(20, '=') + br)
print(tabulate(df.head(), headers='keys',
tablefmt='simple',
numalign='right',
stralign='left', showindex=False))
----------出力----------
=======print========
Id Type mediumId largeId Name
0 50 small 66 10 ソーセージ・ウインナー
1 1491 small 67 10 生ハム
2 1492 small 67 10 鶏ハム
3 321 small 67 10 その他のハム
4 49 small 68 10 ベーコン
=======pprint=======
Id Type mediumId largeId Name
0 50 small 66 10 ソーセージ・ウインナー
1 1491 small 67 10 生ハム
2 1492 small 67 10 鶏ハム
3 321 small 67 10 その他のハム
4 49 small 68 10 ベーコン
===tabulate psql====
+------+--------+------------+-----------+-------------+
| Id | Type | mediumId | largeId | Name |
|------+--------+------------+-----------+-------------|
| 50 | small | 66 | 10 | ソーセージ・ウインナー |
| 1491 | small | 67 | 10 | 生ハム |
| 1492 | small | 67 | 10 | 鶏ハム |
| 321 | small | 67 | 10 | その他のハム |
| 49 | small | 68 | 10 | ベーコン |
+------+--------+------------+-
----------+-------------+
==tabulate simple===
Id Type mediumId largeId Name
---- ------ ---------- --------- -----------
50 small 66 10 ソーセージ・ウインナー
1491 small 67 10 生ハム
1492 small 67 10 鶏ハム
321 small 67 10 その他のハム
49 small 68 10 ベーコン
tabulate simpleが綺麗かな?と思いました。