对于下面的简单程序,我期待第二个输出与第一个输出相同..
为什么不发生这种情况?
这只是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
data2 = [('67123', 12, '85' , '100'),
('87878', 23, "95", '100'),
('67123', 112, '15', '100'),
]
df2 = pd.DataFrame(data2, columns=columnList)
df2 = df2.set_index(["PID", "Sec"])
print df2
Util random
PID Sec
67123 12 85 100
87878 23 95 100
67123 112 15 100
答案 0 :(得分:0)
默认显示Multiindex
。您可以通过display.multi_sparse
将参数False
设置为with
来临时更改它。
选项:display.multi_sparse
默认:True
功能:“Sparsify”MultiIndex显示(不显示组内外层的重复元素)
Pandas
的
#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
如果您需要set it,请使用:
pd.set_option('display.multi_sparse', False)
并重置:
pd.reset_option('multi_sparse')