MultiIndex Pandas不会将第一个索引级别分组

时间:2017-08-25 12:46:08

标签: python pandas multi-index

我正在尝试在行中创建一个带有两级索引的Pandas Dataframe。

info = pd.DataFrame([['A', 1, 3],
                   ['A', 2, 4],
                   ['A', 3, 6],
                   ['B', 1, 9],
                   ['B', 2, 10],
                   ['B', 4, 6]], columns=pd.Index(['C', 'D', 'V'])    
info_new = info.set_index(['C', 'D'], drop=False)

编辑:我想要以下输出:

     V
C  D
A  1 3
   2 4
   3 6
B  1 9
   2 10
   4 6

根据我发现的每条指令,这都应该有效。 我还在接受

     V
C  D
A  1 3
A  2 4
A  3 6
B  1 9
B  2 10
B  4 6

显然,多索引在这里不起作用。

我使用.is_unique检查了每个具有非唯一值的列,答案为False。 我检查了具有唯一值的列,答案是True。 我也尝试分配一个dtype = str,这没有改变任何东西。

1 个答案:

答案 0 :(得分:0)

感谢您发表info_new.index.is_lexsorted()评论。

我通过在.csv导入中指定dtype = str来解决它,然后:

info_new.sortlevel(inplace=True)