pandas.DataFrame.sort_index#
- DataFrame.sort_index(axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, ignore_index=False, key=None)[源代码]#
按标签(沿轴)对对象进行排序。
如果是,则返回按标签排序的新DataFrame inplace 论据是
False
,否则更新原始DataFrame并返回None。- 参数
- axis{0或‘index’,1或‘Columns’},默认为0
排序所依据的轴。值0标识行,值1标识列。
- levelINT或级别名称或INT列表或级别名称列表
如果不是无,则对指定索引级别中的值进行排序。
- ascending布尔型或类似列表型布尔型,默认为True
升序和降序排序。当索引为多索引时,可以单独控制每个级别的排序方向。
- inplace布尔值,默认为False
如果为True,则就地执行操作。
- kind{‘快速排序’,‘合并排序’,‘堆排序’,‘稳定’},默认‘快速排序’
排序算法的选择。另请参阅
numpy.sort()
了解更多信息。 mergesort 和 stable 是唯一稳定的算法。对于DataFrames,此选项仅在对单个列或标签进行排序时应用。- na_position{‘First’,‘Last’},默认为‘Last’
在以下情况下将NAS放在开头 first ; last 把Nans放在末尾。未为多索引实现。
- sort_remaining布尔值,默认为True
如果为True且按级别和索引排序为多级,则在按指定级别排序后也按其他级别排序(按顺序)。
- ignore_index布尔值,默认为False
如果为True,则生成的轴将标记为0,1,…,n-1。
1.0.0 新版功能.
- key可调用,可选
如果不是无,则在排序前将键函数应用于索引值。这类似于 key 建筑中的参数
sorted()
函数,但显著不同的是,这 key 函数应为 矢量化 。它应该期待一个Index
并返回一个Index
同样的形状。对于多索引输入,将应用该键 每一级 。1.1.0 新版功能.
- 退货
- DataFrame或无
按标签排序的原始DataFrame,如果
inplace=True
。
参见
Series.sort_index
按索引对系列进行排序。
DataFrame.sort_values
按值对DataFrame进行排序。
Series.sort_values
按值对系列进行排序。
示例
>>> df = pd.DataFrame([1, 2, 3, 4, 5], index=[100, 29, 234, 1, 150], ... columns=['A']) >>> df.sort_index() A 1 4 29 2 100 1 150 5 234 3
默认情况下,它按升序排序,若要按降序排序,请使用
ascending=False
>>> df.sort_index(ascending=False) A 234 3 150 5 100 1 29 2 1 4
可以指定在排序前应用于索引的键函数。为.
MultiIndex
这将分别应用于每个级别。>>> df = pd.DataFrame({"a": [1, 2, 3, 4]}, index=['A', 'b', 'C', 'd']) >>> df.sort_index(key=lambda x: x.str.lower()) a A 1 b 2 C 3 d 4