您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – print(tabulate(…))到漂亮的打印multiIndex pandas?

5b51 2022/1/14 8:21:49 python 字数 3364 阅读 524 来源 www.jb51.cc/python

说我有一个熊猫数据框:import numpy as np import pandas as pd from tabulate import tabulate A = pd.DataFrame(np.random.randint(0,10,(3,6)), index= ['uno', 'dos', 'tres']) A.columns = ['A','B'

概述

我有一个熊猫数据框:

import numpy as np
import pandas as pd
from tabulate import tabulate

A = pd.DataFrame(np.random.randint(0,10,(3,6)),index= ['uno','dos','tres'])
A.columns = ['A','B','C','D','E','F']
A.index.names = ['type']
A.columns.names= ['group']

h = [A.index.names[0] +'/'+ A.columns.names[0]] + list(A.columns)
print(tabulate(A,headers= h,tablefmt= 'grid'))

这使:

+--------------+-----+-----+-----+-----+-----+-----+
| type/group   |   A |   B |   C |   D |   E |   F |
+==============+=====+=====+=====+=====+=====+=====+
| uno          |   3 |   1 |   6 |   0 |   7 |   0 |
+--------------+-----+-----+-----+-----+-----+-----+
| dos          |   9 |   5 |   3 |   0 |   6 |   6 |
+--------------+-----+-----+-----+-----+-----+-----+
| tres         |   6 |   7 |   4 |   6 |   8 |   4 |
+--------------+-----+-----+-----+-----+-----+-----+

现在添加一个图层:

iterable = [['A','B'],['AA','BB','CC']]
A.columns = pd.MultiIndex.from_product(iterable,names= ['group','subgroup'])
A.index.names = ['type']

将使用打印声明给出:

group     A        B      
subgroup AA BB CC AA BB CC
type                      
uno       3  1  6  0  7  0
dos       9  5  3  0  6  6
tres      6  7  4  6  8  4

通常,这在诸如pweave的文档上不能很好地呈现.

我如何使用print(tabulate(…)),例如我将每个组和子组显示在单独的行上?

谢谢

import numpy as np
import pandas as pd
from tabulate import tabulate

A = pd.DataFrame(np.random.randint(0,'F']
A.index.names = ['type']
A.columns.names= ['group']

iterable = [['A','subgroup'])

h = [A.index.names[0] +'/'+ A.columns.names[0]] + list(map('\n'.join,A.columns.tolist()))
print(tabulate(A,tablefmt= 'grid'))

产量

+--------------+------+------+------+------+------+------+
| type/group   |    A |    A |    A |    B |    B |    B |
|              |   AA |   BB |   CC |   AA |   BB |   CC |
+==============+======+======+======+======+======+======+
| uno          |    8 |    4 |    3 |    3 |    4 |    2 |
+--------------+------+------+------+------+------+------+
| dos          |    1 |    1 |    1 |    9 |    8 |    9 |
+--------------+------+------+------+------+------+------+
| tres         |    0 |    4 |    3 |    6 |    1 |    7 |
+--------------+------+------+------+------+------+------+

总结

以上是编程之家为你收集整理的python – print(tabulate(…))到漂亮的打印multiIndex pandas?全部内容,希望文章能够帮你解决python – print(tabulate(…))到漂亮的打印multiIndex pandas?所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶