一个人可能会在熊猫中生成单级MultiIndex,如下所示:
index = pd.MultiIndex.from_arrays([[1,2,3]])
index
print ('Number of levels = %d' % index.nlevels)
MultiIndex(levels=[[1, 2, 3]],
codes=[[0, 1, 2]])
Number of levels = 1
然后将其用作简单索引,例如,以便初始化DataFrame:
df = pd.DataFrame([0,0,15], index=index, columns=['d'])
df
但是,是否存在单级多索引而不是简单索引的“特殊”用例?我的意思是简单索引“不太舒适”甚至不起作用的情况。
答案 0 :(得分:1)
我只能想到内存使用情况,如果只有一个级别,则应该使用普通索引。
df.index.memory_usage()
123
df.index=[1,2,3]
df.index.memory_usage()
24
答案 1 :(得分:0)
我认为行为应该是相同的,但似乎存在细微的差异。
例如,单级 MultiIndex 会导致索引问题。 看到这个问题:Pandas indexing error with (1) non-unique query, and (2) single-level MultiIndex