小编典典

在熊猫中使用multiIndexing时显示所有索引值

python

我希望在查看我的DataFrame时,我将看到multiIndex的所有值,包括随后的行在其中一个级别具有相同的索引时。这是一个例子:

arrays = [['20', '50', '20', '20'],['N/A', 'N/A', '10', '30']]
tuples = list(zip(*arrays))
index = pd.MultiIndex.from_tuples(tuples, names=['Jim', 'Betty'])
pd.DataFrame([np.random.rand(1)]*4,index=index)

输出为:

                                0
Jim         Betty           
20          N/A          0.954973
50          N/A          0.954973
20          10           0.954973
            30           0.954973

我想在西南角也有20。也就是说,我希望我的DataFrame是:

                                0
Jim         Betty           
20          N/A          0.954973
50          N/A          0.954973
20          10           0.954973
20          30           0.954973

熊猫有能力做到这一点吗?


阅读 209

收藏
2021-01-20

共1个答案

小编典典

您需要设置display.multi_sparseFalse

#if need temporary use option
with pd.option_context('display.multi_sparse', False):
    print (df)

                  0
Jim Betty          
20  N/A    0.201643
50  N/A    0.201643
20  10     0.201643
20  30     0.201643

如果整个笔记本电脑都需要此显示选项,则可以如下设置该选项:

# if permanent use
import pandas as pd
pd.options.display.multi_sparse = False

说明文件

display.multi_sparse为
True的
“稀疏” MultiIndex显示(不显示组内外层的重复元素)

2021-01-20