Pandas DataFrame.sortlevel键
是否有方法将Pandas DataFrame.sortlevel键,pandas,Pandas,是否有方法将键函数(如排序获取)传递到Pandas中的DataFrame.sortlevel方法 我的问题是,我在索引中使用元组,我想指定它们之间的相对排序方式。我认为您可以通过以下方式实现这一点: import pandas as pd import numpy as np arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'], ['one', 'two', 'one', 'two', 'on
键
函数(如排序
获取)传递到Pandas中的DataFrame.sortlevel
方法
我的问题是,我在索引中使用元组,我想指定它们之间的相对排序方式。我认为您可以通过以下方式实现这一点:
import pandas as pd
import numpy as np
arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'],
['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]
index = pd.MultiIndex.from_tuples(zip(*arrays), names=['first', 'second'])
s = pd.Series(np.random.randint(0, 20, 8), index=index)
keyfunc = lambda x:x[::-1]
key = map(keyfunc, s.index.get_level_values(0))
index = np.argsort(key)
s.take(index)
输出:
first second
foo one 0
two 3
bar one 9
two 8
qux one 4
two 12
baz one 11
two 1
dtype: int64