Python 使用嵌套字典创建多索引“Series”

Python 使用嵌套字典创建多索引“Series”,python,pandas,dictionary,nested,series,Python,Pandas,Dictionary,Nested,Series,在我看来,我试图做的应该是简单的,就像将其传递给构造函数一样简单,但实际上并非如此。我有一本下面这样的字典 d = {"russell": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)}, "cantor": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)}, "godel": {"score": n

在我看来,我试图做的应该是简单的,就像将其传递给构造函数一样简单,但实际上并非如此。我有一本下面这样的字典

d = {"russell": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)},
    "cantor": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)},
    "godel": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)}}
russell  score  0.87391482
         ping   23
cantor   score  0.77821932
         ping   16
godel    score  0.53372128
         ping   35
我想做一些类似于
pandas.Series(d)
的事情,并获得一个
Series
实例,如下所示

d = {"russell": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)},
    "cantor": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)},
    "godel": {"score": numpy.random.rand(), "ping": numpy.random.randint(10, 100)}}
russell  score  0.87391482
         ping   23
cantor   score  0.77821932
         ping   16
godel    score  0.53372128
         ping   35
但我真正得到的是下面

cantor     {'ping': 44, 'score': 0.007408727109865398}
godel        {'ping': 41, 'score': 0.9338940910283948}
russell       {'ping': 74, 'score': 0.733817307366666}
有没有一种方法可以实现我想要实现的目标?

我认为您需要具备:

此外,如果需要在多索引中交换级别,请使用: