当前位置: 首页 > 面试题库 >

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

庞元青
2023-03-14
问题内容

我希望在查看我的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

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


问题答案:

您需要设置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显示(不显示组内外层的重复元素)



 类似资料:
  • 我正在从pandas输出一个csv文件,其中包含一些用于latex报告的调查文本。一些响应在其响应中带有逗号,因此熊猫将数据输出为 通过将字段用双引号括起来,显然可以处理字段中的逗号。 我希望上面看起来像这样: 通过将所述字段包装在{}中,因为这是latex包可以理解的分隔符。 有没有办法告诉熊猫。要做这个吗? 我已经尝试了以下方法 当然,当我需要“}”时,它会用“{”关闭文本包装 更新当我使用p

  • 问题内容: 所以我有一个像这样的DataFrame: 我们可以像这样对它进行布尔索引 我们还可以通过行标签将其切片,如下所示: 我想同时执行这两个操作(因此,避免只做行标签过滤器而不必要地复制)。我将如何去做? 我要寻找的伪代码: 问题答案: 您几乎拥有它:

  • 我正在从数据库中获取数据,我怀疑其中的所有数据都被简单地设置为string,而不是float、int等。当我将数据导入到pandas dataframe中时,所有数据都显示为字符串。 或 我试过str.isNumeric,但所有内容都显示为非数字。 我能做些什么来检测数值吗?

  • 问题内容: 我这样制作数据框。 我想通过使用一些熊猫方法将索引转换为此(例如set_index,stack 、、) 我怎样才能做到这一点? 问题答案: 我认为你需要与重塑,然后交换在水平由列由去年的排序列: 用另一种解决方案和:

  • 我在导入带有熊猫的JSON文件时遇到了一些困难。 这是我得到的错误: 文件结构简化如下: 它来自Coursera上的华盛顿大学机器学习课程。你可以在这里找到文件。

  • 问题内容: 我正在尝试使用pandas创建一个,但是当我将数据导出到它时,我得到了一个额外的列 因此,我的结果是: 但是,预期结果是: 问题答案: 您所看到的是索引列。刚刚设置: