Python 设置索引不在索引中

Python 设置索引不在索引中,python,pandas,dataframe,multi-index,Python,Pandas,Dataframe,Multi Index,对于下面的一个简单程序,我希望第二个输出与第一个相同 为什么没有发生这种情况 这只是data1和data2 columnList = ["PID", "Sec", "Util", "random"] data1 = [('67123', 12, '85' , '100'), ('67123', 112, '15', '100'), ('87878', 23, "95", '100'), ] df1 = pd.DataFrame(dat

对于下面的一个简单程序,我希望第二个输出与第一个相同

为什么没有发生这种情况

这只是
data1
data2

columnList = ["PID", "Sec", "Util", "random"]

data1 = [('67123', 12, '85' , '100'),  
         ('67123', 112, '15', '100'),
         ('87878', 23, "95", '100'), 
        ]

df1 = pd.DataFrame(data1, columns=columnList)
df1 = df1.set_index(["PID", "Sec"])
print df1

         Util random

PID   Sec            

67123 12    85    100

      112   15    100

87878 23    95    100

它是默认显示的
多索引
。您可以通过设置参数
display.multi_sparse
将其临时更改为
False
with
with

选项:display.multi\u

默认值:True

功能:“稀疏”多索引显示(不在组内的外层显示重复的元素)

熊猫的

#default options
#set temporary multi_sparse to True
with pd.option_context('display.multi_sparse', True):
    print df1
    
          Util random
PID   Sec            
67123 12    85    100
      112   15    100
87878 23    95    100
    
#same as
print df1    
    
          Util random
PID   Sec            
67123 12    85    100
      112   15    100
87878 23    95    100

#set temporary multi_sparse to False    
with pd.option_context('display.multi_sparse', False):
    print df1    
          Util random
PID   Sec            
67123 12    85    100
67123 112   15    100
87878 23    95    100
如果需要,请使用:

和重置:

pd.reset_option('multi_sparse')

它是默认显示的
多索引
。您可以通过设置参数
display.multi_sparse
将其临时更改为
False
with
with

选项:display.multi\u

默认值:True

功能:“稀疏”多索引显示(不在组内的外层显示重复的元素)

熊猫的

#default options
#set temporary multi_sparse to True
with pd.option_context('display.multi_sparse', True):
    print df1
    
          Util random
PID   Sec            
67123 12    85    100
      112   15    100
87878 23    95    100
    
#same as
print df1    
    
          Util random
PID   Sec            
67123 12    85    100
      112   15    100
87878 23    95    100

#set temporary multi_sparse to False    
with pd.option_context('display.multi_sparse', False):
    print df1    
          Util random
PID   Sec            
67123 12    85    100
67123 112   15    100
87878 23    95    100
如果需要,请使用:

和重置:

pd.reset_option('multi_sparse')

我已经将选项设置为:pd.set_option('display.multi_sparse',False),它仍然在67213的PID列中显示2行,我希望这是67213对应的一行,在Sec列中显示2行。它显示与以下内容相同的输出:
with pd.option_context('display.multi_sparse',True):打印df1
和带有pd的
。选项\u上下文('display.multi\u sparse',False):打印df1
?如果为False,两个输出均显示扁平行。如果为True,则只有第一个输出显示为分组视图,而第二个输出始终为平面。我在jupyterI看到了这一点,我认为这是理想的输出。这是正确的,因为在
多索引
中使用重复值显示
数据帧
的唯一区别。和
display.multi_sparse
设置两种显示模式-通过
False
multi-index
中显示重复值,以及通过
隐藏
重复2.nd、3、。。按
设置的值为False
。也许我之前解释得不太清楚,对不起。我已经将选项设置为:pd.set_option('display.multi_sparse',False),并且它仍然在67213的PID列中显示2行,我希望它是67213对应的一行中的一行,Sec列中的2行。它显示的输出与:
with pd.option_context('display.multi_sparse',True)相同:打印df1
和带有pd的
。选项\u上下文('display.multi\u sparse',False):打印df1
?如果为False,两个输出均显示扁平行。如果为True,则只有第一个输出显示为分组视图,而第二个输出始终为平面。我在jupyterI看到了这一点,我认为这是理想的输出。这是正确的,因为在
多索引
中使用重复值显示
数据帧
的唯一区别。和
display.multi_sparse
设置两种显示模式-通过
False
multi-index
中显示重复值,以及通过
隐藏
重复2.nd、3、。。按
设置的值为False
。也许我之前解释得不太清楚,对不起。